在单片机实现舵机控制的过程中发现,每个对MC9S12XS128单片机PWM的说明都是说有8路PWM(8位),但是每个最小系统板,包括龙丘和苏大的板子上,PP6都没有引出来,不知道什么原因,也没有深究,但是进行魔方的运动控制需要8个舵机完成,那么就缺一路,没办法,只能通过软件模拟PWM了。
//包含头文件
#include "Includes.h" //包含总头文件
//在此添加全局变量定义
uint8 aa;
//主函数
void main(void)
{
//0.1 主程序使用的变量定义
uint32 mRuncount=0; //运行计数器
//0.2 关总中断
DisableInterrupt();
//0.3 芯片初始化
MCUInit(FBUS_32M);
//0.4初始化PA0为输出,初始值为0
GPIO_Init(PA,0,1,0);
//0.5 外接LED灯观察,亮暗变化
for(;;)
{
GPIO_Set(PA,PRT,0,1);
Delay(5); //延时适当时间
GPIO_Set(PA,PRT,0,0);
Delay(207);
} //for_end(主循环结束)
} //main_end
//212对应20ms
模拟PWM周期(20ms)
高电平为1.140ms的波形