Страница 1 из 1
pic12f675. Вопрос более тех. характера, чем программного
Добавлено: Ср апр 18, 2018 22:08:00
Uma_an
Доброй ночи всем

Если такое возможно, то разрешите трабл:
тело проги:
----
program puls
main:
GPIO=0
CMCON=7
TRISIO=%00000000
setbit(GPIO,1)
delay_ms(36)
clearbit(GPIO,1)
delay_us(1667)
setbit(GPIO,1)
delay_us(1667)
{....
и т.д.}
end.
---
В "изображениях": ... Сonfig - фьюзы, в Imp - красным выделены какие-то "лишние импульсы" по сравнению с оригиналом (ориг ниже в осциллограмме)...
Добавлено after 55 seconds:
и исчо: если не трудно, то второй вопрос: 12f675 ...(с кварцем или без), фьюзы соответствующие ставлю для кварца или без...
delay_ms(1000)... пауза нефига не 1 сек. на 40% отличается

Re: pic12f675. Вопрос более тех. характера, чем программного
Добавлено: Ср апр 18, 2018 23:34:49
sdn_
Готовый код мигалки. (<pic12f629.h> поправить на <pic12F675.h>)
Компилятор - XC8
Спойлер
Код: Выделить всё
#include <pic12f629.h>
#include <xc.h>
#define _XTAL_FREQ 4000000
#pragma config FOSC = _INTRC_OSC_NOCLKOUT, MCLRE = OFF, PWRTE = OFF, WDTE = OFF
void main(void){
//Выключение подтягивающих резисторов
WPU = 0x00;
// //Запретить использование подтягивающих резисторов
OPTION_REGbits.nGPPU = 1;
// отключить компаратор
CMCON = 0x07;
//Настрока выходов GP4, GP5 на выход
TRISIO = 0;
//Установка на выходах GP4, GP5 лог. 0
GPIO = 0;
//Бесконечный цикл.
while(1){
GPIO4 ^=1;//выв. 3 инверсия бита 4
__delay_ms(1000); //Задержка на 1 сек
}
}
Re: pic12f675. Вопрос более тех. характера, чем программного
Добавлено: Вс апр 22, 2018 20:34:35
Uma_an
Ок. Установил MPLAB 8.92 и XC8. Не работает:
1) GPIO4 ^=1;
т.е. не инвертирует...
---
2) не работает ТАКАЯ "РЕЗКАЯ" последовательность операторов:
...
GPIO0=1;
GPIO1=1;
GPIO2=1;
и т.д.
Какую задержку м.б. нужно ставить между ними?
---
3) #pragma config FOSC = INTRCIO пришлось поставить вместо "#pragma config FOSC = _INTRC_OSC_NOCLKOUT"
//INTRCIO INTOSC oscillator: I/O function on GP4/OSC2/CLKOUT pin, I/O function on GP5/OSC1/CLKIN
Порадовало:
__delay_ms() ... можно ставить не константой, а можно делать арифметические действия
-----------------------
какую MPLAB установить, чтобы минимально приближённо "понимать всех и все понимали меня (или Mplab 8.92)" или что я еще накосячил в установках и изучении абсолютно нового языка?!?
Re: pic12f675. Вопрос более тех. характера, чем программного
Добавлено: Пн апр 23, 2018 07:27:06
КРАМ
Вы в курсе, что можно посмотреть на скомпилированный ассемблерный код?
И как можно что либо говорить в отрыве от остального кода? Вы инициализировали пины порта? Отключили аналоговые функции, выключили компаратор, перевели пины на выход?
