本帖最后由 芯圣电子官方QQ 于 2023-7-24 14:32 编辑
前不久我收到了芯圣的开发板,准备上手做个简单测试,这款是51内核,相信很多人很熟悉的了,大部分的初学者接触开发板基本都是89C51的单片机了,大学现在授课也基本是这款单片机,我自己入门也是跟着51单片机的教程来的。本次的产品HC89F0541是一款增强型的51内核单片机,芯片外设资源也是很丰富的,ADC和一些硬件外设,SPI,IIC也都是有的。所以用来开发产品也是没问题的,其次就是官方也有一个额温枪的案例,可以供我们参考。 接下来,我们一起看下开发板吧。 开发板整体做工很好,用了黑色油墨,和仿真器和芯片连接处有很多芯片,估计是为了5V和3.3V电源间的转换设计。同时目前芯片上没有丝印,不知道是不是故意抹去的。 在开发这款单片机的时候,基本上没什么问题,例程都是给的很全的,自己只要改改就能实现自己想要的功能。 使用的时候,官方是使用keil开发软件,正好自己也是有软件,可以装个HC-LINK,就可以直接使用了。 本次开发实例选择的是《ADC的单通道检测》例程进行修改。 voidUsart_Init(void) { P1M6 = 0xC2; //P16设置为推挽输出 P1M7 = 0x62; //P17设置为上拉输出 TXD_MAP = 0x16; //TXD映射P16 RXD_MAP = 0x17; //RXD映射P17 T4CON = 0x06; //T4工作模式:UART1波特率发生器 //波特率计算 //波特率 = 1/16 * (T4时钟源频率 / 定时器4预分频比) / (65536 - 0xFF98) // = 1/16 * ((16000000 / 1) / 104) // = 9615.38(误差0.16%) //波特率9600 //反推初值 = (65536 - ((T4时钟源频率 / 定时器4预分频比) * (1 / 16)) / 波特率) // = (65536 - (16000000 * (1 / 16) / 9600)) // = (65536 - 104.167) // = FF98 TH4 = 0xFF; TL4 = 0x98; //波特率9600 SCON2 = 0x02; //8位UART,波特率可变 SCON = 0x10; //允许串行接收 IE |= 0x10; //使能串口中断 EA = 1; //使能总中断 } //UART1 发送串口数据 voidUART1_SendData(char dat) { IE &=~ 0x10; //失能UART1中断 SBUF=dat; while(!(SCON & 0x02)); SCON &=~ 0x02; //清除发送中断标志位 IE |= 0x10; //UART1中断使能 } //重写putchar函数 char putchar(char c) { UART1_SendData(c); return c; } 在此基础上添加串口打印就可以了。 然后我们就可以在P24口接入不同电压,测试程序运行。 同时我们也可以仿真看程序效果,不过仿真之后断电,程序是没有了,要想断电后还运行就需要把程序固化进去,大家可以看我上传的资料。本次实验就到这里。
|