STC12C5A60S2单片机内部自带高达60KFLASHROM,这种工艺的存储器用户可以用电的方式瞬间擦除、改写。而且STC系列单片机支持串口程序烧写。显而易见,这种单片机对开发设备的要求很低,开发时间也大大缩短。写入单片机内的程序还可以进行加密,这又很好地保护了你的劳动成果。
1、串口Uart
STC12C5A60S2单片机是一款功能比较强大的单片机,它拥有两个全双工串行通信接口,串口1的功能及操作与传统51单片机串行口相同;特殊的是STC12C5A60S2单片机内部有一个独立波特率发生器,串口1可以使用定时器1作为波特率发生器,也可以使用独立波特率发生器作为波特率发生器;而串口2只能使用独立波特率发生器作为波特率发生器。
这里的用stc12单片机,因为不用12分频,所以可以进行115200波特率快速传输(注意晶振必须11。0592MHz,12MHz的会乱码,本人亲测),而如果改用其他的51单片机,只需要把UartInit()函数改成自己的初始化设置就行,比如89c52,当然要记得改52头文件。可以直接调用UartPrintf()函数,跟c中prinf()用法几乎相同,支持%d%0。2f等省去了字符转换。而对于接收到的字符命令进行处理只需要在UartReceiveHandler函数中修改即可。
2、自带的EEPROM
对于stc自带EEPROM来说,用起来唯一不太方便的地方就是每次修改任何一个字节需要将整个扇区都擦除才能修改,所以每次修改都要讲整个扇区内容用数组全部读出缓存起来,进行擦除操作,讲需要修改的内容在相应的数组位置修改好,再讲整个数组内容重新写入到EEPROM里,头文件中我已经将接口函数都写好啦。直接调用就行,不用考虑任何问题,而且地址也直接从0开始到USING_CHAR_NUM-1(USING_CHAR_NUM最大可到512)。