nRf24le1旺哥整理的代码1 - GPIO - LED
作者:星希望(QQ:411057286)
转载请声明出处
涉及代码文件已上传到本站,搜索 “ nRf24le1旺哥整理的代码 ” ,欢迎留言讨论;
创作背景
最近在搞一个RFID的项目,在短距离(0–5米内)识别电子标签,并能读取出标签的ID号;
迫于无源RFID读写距离太近,所以选择了有源RFID;
在查阅相关资料后,芯片锁定为nRf24LE1
在某宝上购买到开发板后,发现卖家给的资料简直一塌糊涂,遂决心自己编写寄存器驱动;
以下代码仅作为模块化参考,读者们在引用过程中需要根据自身情况做适当修改;
第1课 - 点亮LED
直接贴代码:
/********************** 分 割 线 **********************/
文件名:LED.h
#ifndef LED_H
#define LED_H
#include “SYS.h”
#define led_0 P00
#define led_1 P01
#define led_2 P02
#define led_3 P03
#define led_4 P04
#define led_5 P06
#define led_6 P12
#define led_7 P13
#define led_8 P14
void LED_init(void);
void LED_test(void);
#endif
/********************** 分 割 线 **********************/
文件名:LED.c
/************************************************************************
- LED驱动(已校验)
- 作者:星希望(QQ:411057286)
- 日期:2019年5月8日
************************************************************************/
#include “LED.h”
#include “delay.h”
/************************************************************************
-
初始化
************************************************************************/
void LED_init(void)
{
P0 |= BIT0 + BIT1 + BIT2 + BIT3 + BIT4 + BIT6;
P0DIR &= ~(BIT0 + BIT1 + BIT2 + BIT3 + BIT4 + BIT6); // 方向 输出, 0-out,1-input
P0CON &= ~(BIT0 + BIT1 + BIT2 + BIT3 + BIT4 + BIT6); // 第三功能 不使用 0-off,1-onP1 |= BIT2 + BIT3 + BIT4;
P1DIR &= ~(BIT2 + BIT3 + BIT4); // 方向 输出, 0-out,1-input
P1CON &= ~(BIT2 + BIT3 + BIT4); // 第三功能 不使用 0-off,1-on
}
void LED_test(void)
{
led_0 = ~led_0;
led_1 = ~led_1;
led_2 = ~led_2;
led_3 = ~led_3;
led_4 = ~led_4;
led_5 = ~led_5;
led_6 = ~led_6;
led_7 = ~led_7;
led_8 = ~led_8;
delay_ms(1000);
}
/********************** 分 割 线 **********************/
文件名:mian.c
/************************************************************************
- 闪烁的LED
- 作者:星希望
- 日期:2019年5月8日
************************************************************************/
#include “LED.h”
#include “delay.h”
/************************************************************************
-
主函数
************************************************************************/
void main(void)
{
LED_init();while(1)
{
LED_test();
}
}