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