嵌入式流水灯c语言代码

2022-07-15 08:12:12   第一文档网     [ 字体: ] [ 阅读: ] [ 文档下载 ]
说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。下载word有问题请添加QQ:admin处理,感谢您的支持与谅解。点击这里给我发消息

#第一文档网# 导语】以下是®第一文档网的小编为您整理的《嵌入式流水灯c语言代码》,欢迎阅读!
流水灯,嵌入式,语言,代码

流水灯实验

1.实验内容

使用GPIO口控制8LED流水灯显示。

2.实验步骤

启动ADS1.2IDE集成开发环境,选择ARM Executable Image for lpc2131工程模板建立一个工程LedDisp_C

user组里编写主程序代码main.c

选用DebugInRam生成目标,然后编译链接工程。

EasyARM教学实验开发平台上的P1.[18:25]管脚对应与LED[1:8]跳线短接。 选择Project->Debug,启动AXD进行JTAG仿真调试。

3.实验参考程序

程序清单 错误!文档中没有指定样式的文字。-1 GPIO输出控制实验2的参考程序 #include "config.h"

/* LED8~LED1 8LED分别由P1.25~P1.18控制 */

const uint32 LEDS8=(0XFF<<18); //p1[25:18]控制LED8~LED1低电平点亮 /******************************************************************** 函数DelayNS() 进行长软件延时

*********************************************************************/ void DelayNS(uint32 dly) { uint32 i; for(;dly>0;dly--) for(i=0;i<50000;i++); }

const uint32 LED_TBL[]={

0X00,0XFF, //全部熄灭后,点亮 0X01,0X02,0X04,0X08,0X10,0X20,0X40,0X80, //逐次逐个点亮 0X01,0X03,0X07,0X0F,0X1F,0X3F,0X7F,0XFF, //逐次逐个叠加 0XFF,0X7F,0X3F,0X1F,0X0F,0X07,0X03,0X01, //逐次逐个递减 0X81,0X42,0X24,0X18,0X18,0X24,0X42,0X81, //两个靠拢后分开

0X81,0XC3,0XE7,0XFF,0XFF,0XE7,0XC3,0X81 //两边叠加后递减 }; int main (void) { uint8 i;

PINSEL2=PINSEL2&(~0X08); //p1[25:16]链接GPIO IO1DIR=LEDS8; //设置为LED输出口 while(1)

{ for(i=0;i<42;i++) {

IO1SET=~((LED_TBL[i])<<18); DelayNS(20);


IO1CLR=((LED_TBL[i])<<18); DelayNS(20); } } return 0; }




本文来源:https://www.dywdw.cn/686c5ae1240c844769eaee39.html

相关推荐
推荐阅读