嵌入式流水灯c语言代码

2022-07-15 08:12:12   文档大全网     [ 字体: ] [ 阅读: ]

#文档大全网# 导语】以下是®文档大全网的小编为您整理的《嵌入式流水灯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.wddqxz.cn/686c5ae1240c844769eaee39.html

相关推荐