1978年美国贝尔实验室正式发表C语言,后来美国在此基础上制定了一个C语言标准于1983年发表即 ANSI C。
学习一种编程语言,需用一个好的编程环境,Freescale为广大的用户提供了免费的Codewarrior集成开发系统。为用户快速步入单片机的C语言编程提供一个很好的平台。
Codewarrior一般按照工程进行文件的管理。一个工程包含的文件无非就是,C文件, H文件,
Lib文件和内存分配文件。项目的框架如下所示:
/*-----------------------------------------------------*
*工 程
名:Prgframe.mcp
*
*硬件连接:PTA.1接指示灯
*
*程序描述:指示灯PTA.1闪烁
*
*目 的:第一个freescale(Motorola) HC08系列MCU程序框架*
*说 明:提供Motorola MCU的编程框架,供教学入门使用 *
*注 意:如果延时不够长的话,会发觉灯不会闪烁,而是一 *
*
直亮,这是由于人的视觉的引起的。
*/
/*[头文件]*/
#i nclude
"GP32C.h"
//映像寄存器地址头文件
/*[指示灯所接引脚定义]*/
#define Light_P
PTA
//灯(Light)接在PTA口
#define Light_D
DDRA //相应的方向寄存器
#define Light_Pin
1
//灯所在的引脚
/*[全局变量声明]*/
unsigned char I1;
/*[延时子函数声明]*/
void Delay1000(void);
/*[主函数]*/
void main()
{
//[I/O初始化]
Light_D|=1<<Light_Pin;
//令指示灯引脚为输出
Light_P|=1<<Light_Pin;
//初始时,指示灯"暗"
//[程序总循环入口]
while(1)
{
//指示灯(Light)“亮”
Light_P&=~(1<<Light_Pin);
//延时
for(I1=0;I1<=250;I1++)
Delay1000();
//指示灯(Light)"暗”
Light_P|=1<<Light_Pin;
//延时
for(I1=0;I1<=250;I1++)
Delay1000();
}
}
/*[内部子程序存放处]
/*Delay1000:延时1000个时钟周期-------------------------*
*功
能:延时函数(约1000个时钟周期)
*
*参
数:无
*
*返
回:无
*
*-----------------------------------------------------*/
void Delay1000(void)
{ unsigned char u;
for(u=0;u<=110;u++);
}