高速SoC单片机C8051F040在双基色LED屏中的应用
(2) 软件流程图
C8051F040控制LED的主程序流程图如图2所示,显示程序流程图如图3所示。


(3) C8051F040源程序
C8051F040的源程序如下。
(1)系统时钟配置
void SYSCLK_Init (void)
{ int i = 0;
SFRPAGE = CONFIG_PAGE;
OSCXCN = 0x67;
for (i = 0; i 3000; i++);
// Wait 1ms for initialization
while ((OSCXCN 0x80) == 0);
CLKSEL = 0x01;
OSCICN = 0x00; }
(2)系统端口配置
void PORT_Init()
{ SFRPAGE = CONFIG_PAGE;
//st SFR page before writing to XBR0 = 0x04
//允许UART0、RX、TX连到2个端口引脚XBR0=00000100 P1MDOUT = 0xf0; //推挽输出
P2MDOUT = 0xff;
P3MDOUT=0xff;
P4MDOUT=0x00; //漏极开漏输出
P4 |= 0xff; //写1禁止低端输出驱动器
P0MDOUT |= 0x01; //使能TX0作为推挽输出
XBR2 = 0x42;
}
评论