上手了一块STC8A8K64S4A12,STC公司推出的最新的单片机,性能比51要好非常多。详细的芯片信息可以在官网搜到。
链接:http://www.stcisp.com/_datasheet_STC8F8K.html
目前还没使用到高级的功能,只使用了串口功能,上手感觉和51没太大差别。逻辑一致,需要注意的是里面一些寄存器的配置,跟51有些区别,可以在stc-isp下载器那里查询相关的程序,直接套用即可。
使用串口之前要先看看相关的寄存器配置,直接套用网上的例程可能会出错。我本次使用了两个定时器,定时器1作为串口1的波特率发送器,另开定时器2作为计时使用。使用定时器要考虑寄存器的赋值问题,刚开始使用我在两个定时器的初始化函数里面都对AUXR寄存器进行了赋值,导致跑程序时AUXR的值在两个初始化函数里面切来切去,整个功能都无法实现。
/***************************************************/
void UartInit(void) //9600bps@24.000MHz
{
PCON &= 0x7F; //波特率不倍速
SCON = 0x50;