【STM8教程】GPIO输出 STM8的C语言编程(3) ―― GPIO输出 与前些日子写的用汇编语言进行的实验一样,从今天开始,要在ST的三合一开发板上, 用C语言编写程序,进行一系列的实验。 首先当然从最简单的LED指示灯闪烁的实验开始。 开发板上的LED1接在STM8的PD3上,因此要将PD3设置成输出模式,为了提高高电平时的 输出电流,要将其设置成推挽输出方式。这主要通过设置对应的DDR/CR1/CR2寄存器实现 。 利用ST的开发工具,先生成一个C语言程序的框架,然后修改其中的main.c,修改后的代 码如下。 编译通过后,下载到开发板,运行程序,可以看到LED1在闪烁,且闪烁的频率为5HZ。 /* MAIN.C file * * Copyright (c) 2002-2005 STMicroelectronics */ #include "STM8S207C_S.h" // 函数功能:延时函数 // 输入参数:ms -- 要延时的毫秒数,这里假设CPU的主频为2MHZ // 输出参数:无 // 返 回 值:无 // 备 注:无 void DelayMS(unsigned int ms) { unsigned char i; while(ms != 0) { for(i=0;i { } for(i=0;i { } ms--; } } // 函数功能:主函数 // 初始化GPIO端口PD3,驱动PD3为高电平和低电平 // 输入参数:ms -- 要延时的毫秒数,这里假设CPU的主频为2MHZ // 输出参数:无 // 返 回 值:无 // 备 注:无 main() { PD_DDR = 0x08; PD_CR1 =……