ledtest.c

来自「提高μCOS-II在ARM上执行效率的几种方法》相应代码」· C语言 代码 · 共 39 行

C
39
字号
#include "2410addr.h"

//功能:data是4bit的数,每一个bit对应一个LED灯,响应的位为1的时候表示点亮这个灯
//说明:8bit的F端口,高4bit用作LED,应该是低电平点亮,由于这里使用了~data所以应该是低电平有效。
//		IO口的情况Active is low.(LED On)
//		GPF7   GPF6   GPF5    GPF4
//		nLED_8 nLED4  nLED_2  nLED_1
void Led_Display(int data)
{
	rGPFDAT = (rGPFDAT & ~(0xf<<4)) | ((~data & 0xf)<<4);    
}

//功能:初始化LED端口
void Led_Init()
{
	/* 设置LED连接的IO口为Output,IO口。并disable上拉电阻。
	开发板使用GPF4-7连接LED0和LED1,低电平点亮。*/

    //*** PORT F GROUP
    //Ports  : GPF7   GPF6   GPF5   GPF4      GPF3     GPF2  GPF1   GPF0
    //Signal : nLED_8 nLED_4 nLED_2 nLED_1 nIRQ_PCMCIA EINT2 KBDINT EINT0
    //Setting: Output Output Output Output    EINT3    EINT2 EINT1  EINT0
    //Binary :  01      01 ,  01     01  ,     10       10  , 10     10
    rGPFCON = (rGPFCON & ~(0xFF<<8))|0x5500;
    rGPFUP  = (rGPFUP  & ~(0xF <<4))|0xf0;     // The pull up function is disabled GPF[7:0]    
}

void Led_DisplayAll()
{
	int data;
	data = 0xF;

	// must init fisrt
    rGPFCON = (rGPFCON & ~(0xFF<<8))|0x5500;
    rGPFUP  = (rGPFUP  & ~(0xF <<4))|0xf0;     // The pull up function is disabled GPF[7:0]    

	rGPFDAT = (rGPFDAT & ~(0xf<<4)) | ((~data & 0xf)<<4);    
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?