目录 1.前期预备知识 1.1 新大陆Zigbee模块按键电路图 1.2 CC2530相关寄存器 1.3 CC2530中断走向图 1.4 使用C语言为51单片机编写中断程序 1.5 *函数指针 2. 程序代码 THE END 1.前期预备知识 1.1 新大陆Zigbee模块按键电路图 由上图可知,Zigbee模块的SW1按钮连接在P1.2端口上,当SW1导通,P1.2电平从3.3V被拉低接地.所以P1.2输入模式为下拉输入. 1.2 CC2530相关寄存器 寄存器名称 寄存器作用 寄存器描述 P…
按键控制流水灯 具体想要实现按一下按键,然后单片机的三个灯会以流水灯的形式都亮一遍 实验相关寄存器 实验相关电路 宏定义 #define uint unsigned int #define uchar unsigned char #define LED1 P1_0 #define LED2 P1_1 #define LED3 P0_4 #define KEY1 P0_1 初始化步骤 graph TD id1[设置P0_1 P1_0 P1_1 P0_4为通用接口] id2[设置P0_1为输入接口…
cc2530的第三次实验:按键中断控制流水灯 效果为按一次按键,流水灯亮一次 实验相关电路图: 实验相关寄存器: 初始化函数 //初始化LED灯 //设置P1SEL,通用为0,外设为1 11111100 P1SEL &=~0x03; //设置P0SEL, 11101111 P0SEL &= ~0x10; //设置P1DIR,输出为1,输入为0 00000011 P1DIR |= 0x03; //设置P0DIR 00010000 P0DIR |= 0x10; //初始化按钮和中断 //初始化…
按键和小灯一样,也是通过GPIO外设与主板连接,也是通过GPIO_InitStruct类型结构体控制其工作. 查阅技术手册,按钮连接GPIOA控制下的管脚0. 但与之不同的是,按键是一种输入设备,输入设备的工作状态也有四类,模拟输入,浮空输入,下拉输入和上拉输入. 模拟输入就是输入一个波形,浮空输入指的是未按下按钮时,不确定此管脚的信号状态. 上拉输入指按下按钮时,输出低电平,即0,松开按钮时,输出高电平,即1. 下拉输入则相反. 但是因为STM32的构造问题,按钮只能采用上拉输入,如果将此管脚…
现象是按键按下,小灯亮,按键抬起,小灯灭. 从这一节我们细致剖析gpio口的设置: nrf51822片上一共有32个数字引脚,分为4个port,如下: port 0 pin 0-7 port 1 pin 8-15 port 2 pin 16-23 port 3 pin 24-31 每个gpio都有8个寄存器对其参数进行配置,这些寄存器均为32位,每个位对应每个gpio. 三个设置引脚输入输出寄存器:DIR   DIRSET    DIRCLR 三个设置引脚高低电平寄存器:OUT   OUTSET…
#include <driver/gpio.h> #include <esp_task_wdt.h> #include <freertos/FreeRTOS.h> #include <freertos/queue.h> #include <freertos/semphr.h> #include <freertos/task.h> #include <math.h> #include "sdkconfig.h&qu…
#include "regx51.h"typedef unsigned int u16; void delay_us(u16 time){ while(time--){} }void main(){ //P2_0 = 0;//寄存器 //P2_0 = 1; while(1){ if(P3_1== 0){ P2_0 =0; }else{ P2_0 =1; } } }…
添加一个网址: http://rmingwang.com/gpio-control-flow-lamp-code-archive.html 还有一个 http://www.openedv.com/posts/list/0/378.htm#94993…
key_poll按键轮询实验 实验内容: 通过FS_4412开发板上的按键控制LED灯并打印信息. 实验目的: 熟悉开发环境的使用. 掌握猎户座4412处理器的GPIO接口, 实验平台: FS4412开发板,eclipse,secureCRT. 实验步骤: 1.查看按键K2 在开发板的位置: 2.查看pwron在核心板的位置: 3.查看GPX1_1在芯片手册的说明 4.代码实现 /* * main.c * * Created on: 2018-9-18 * Author: Administrat…
第一个实验:控制流水灯 P1_0,P1_1,P0_4都连接在发光二极管的负极,所以,当这三个引脚为低电平,也就是0的时候,相应的发光二极管才会亮. 其实这里可以稍微的关注一下寄存器的地址,然后,编程的时候可以尝试操作一下! 控制发光二极管的步骤 graph TD id1[设置相应的引脚为通用口也就是设置PnSEL寄存器] id2[设置相应的引脚为输出也就是设置PnDIR寄存器] id4[设置相应引脚的值也就是设置P1_0 P1_1 P0_4的值] id1-->id2 id2-->id4 初始化…