Electronic Projects, forums and more.

Go Back   Electronic Circuits Projects Diagrams Free > Electronics Categories > Micro Controllers


Micro Controllers Discuss all aspects of micro controllers - building them, coding them, etc. All controllers are welcome - PIC, BASIC, Z8 Encore!, etc.

Reply
 
Tools
Old 17th March 2004, 02:26 AM   #1
Default Difference between 877 and 877A?

Hi, Now I am writing a C for 16F877A to communicate witch COM1 of my PC (PC side I use VB) , every thing is oK, but when I changed the chip to 16F877, with the same C program code, 877 I always got a synchronization error. I dont know why.

do {
sendPollPkt(i);
output_low(PIN_C5);
}while (gNewInfo == FALSE) //when newinfo comes do something else

//i represents the No. of PC need to be polled.
// i will set to 0 after reaching the max value.

but when there is an interrupt come in, the i automatically change to 0 for a while, then start to work normally again. (Actually, i should continuously increase)

So I want to know that whether the 877 and 877A got any timing or synchronization difference that effect my program?
Thanks
liupengjian is offline  
Old 17th March 2004, 07:15 AM   #2
Default

I can't help you with C, but you can download a migration datasheet from MicroChip, which shows the changes required from the 877 to the 877A. One obvious difference is the config fuses, have you altered those?.
__________________
PIC programmer software, and PIC Tutorials at:
http://www.winpicprog.co.uk
Nigel Goodwin is offline  
Old 19th March 2004, 02:13 AM   #3
Default

Thanks for your advise, but I changed the fuses to other possible settings, I still got this error, However when the program runs several times, the synchronizing error disappears. Maybe some thing needs to be warm up, so funny.
liupengjian is offline  
Reply

Tags
877, 877a, difference

Thread Tools
Display Modes




All times are GMT. The time now is 02:56 AM.


Electronic Circuits  |  Learning Electronics
eXTReMe Tracker