Пробую победить сабжевый МК. Сделал демоплату на которой 4MHz кварц с двумя конденсаторами, диод (что бы полярность не перепутать) и кнопка сброса от MLCR на землю и через 10К на +5. И еще 8 + 5 штырьков - порты. Решил начать с простого. Написал вот это:
#include ‹pic.h›
main(void)
{
unsigned char counter;
TRISB = 0; /* all bits output */
for (;
![Прикольно](images/smilies/icon_wink3.gif)
{
PORTB = 0b00000000;
for(counter = 254 ; --counter
![Прикольно](images/smilies/icon_wink3.gif)
continue;
PORTB = 0b11111111;
}
}
Компиляю батником с "picc -O -Zg9 -16F84A -V experement1.c"
Программлю Пик ICProg'ом в связке с JDM'овским железом (на установке PIC16F84A). Осцилятор ставлю XT, флаги WDT,PWRT и CP сброшены.Как я думал: сначала на порт пойдет ноль, потом, спустя какой-то промежуток времяни, единица..Мерял мультиметром. Но все оказалось куда сложнее. На выходе получаю то, что стит первым в цикле. Т.е. в данном случае все нули. Если поменять строки записи в порт местами, то будут единицы. Пробовал больше циклов, пробовал подключать delay.c и пользовать DelayMs(500) - результат ровно такой же. Подскажите что я делаю нетак, а то сил больше нет МК мучать.