按键开关

试着制造一台计算机

。_饼干妹妹 提交于 2020-02-11 14:25:11
来源:《计算机是怎样跑起来的》 2.1 制作微型计算机所需的元件 制作微型计算机所需的基础元件只有 3 个: CPU, 负责解释、执行程序,这里使用 Z80 CPU 内存, 负责存储程序和数据, TC5517 I/O, 负责将计算机和外部设备(周边设备)连接在一起, Z80 PIO Z80 是一款古老的CPU, TC5517 是可以存储 2K 的 8比特数据的内存。 PIO ( Parallel I/O) 可以在微型计算机和外部设备之间并行地(一排一排地)输入输入8 比特的数据。 辅助元件: 时钟发生器 : 为了驱动 CPU运转, 称为 “ 时钟信号” 的电信号必不可少, 这种电信号就好像自身带有一个时钟, 每隔一定时间就变换一次电压的高低, 输出时钟信号的元件叫做 “时钟发生器” 。 时钟发生器中带有晶振, 根据其自身的频率(振动的次数) 产生时钟信号, 时钟信号的频率可以衡量 CPU的运转速度, 这里使用的是 2.5MHZ 的时钟发生器 (每隔 1 s 发出 1 次时钟信号就是 1 Hz) 指拨开关 : 用于 输入程序 的装置也是必不可少的, 在这里我们通过拨动指拨开关来输入程序, 指拨开关是由 8 个 开关并排连在一起构成的元件, 输出程序 执行结果的装置是 8 个 LED(发光二极管)。 剩下一些细碎的元件, 电阻是用于阻碍电流流动、降低电压值的元件。 为了省去布线的麻烦,

硬件-NKK OLED可编程按键开关

走远了吗. 提交于 2020-02-04 02:23:05
各位新年好呀,新年第一篇文章献给NKK的OLED可编程按键开关 先看看下样子 这个呢,是我从厂家哪里借来的,厂家还是非常给力的,直接给了一个调试版和两种屏幕,上面的那个有黑边的是旧型号,下面这个“全面屏”的是新的信号,引脚定义都是相同的。 关于开关的详细信息,在压缩包里的文档中有详细的说明,这里仅做展示。 厂家非常贴心的给准备了小卡片,上面告诉了我们去哪里去下载开发包Kit 按照卡片的引导,到对应网站上下载队形的Kit包。这个网站有时候不好上,我把我下载的传到百度云,供小伙伴们使用, 百度网盘地址:链接: https://pan.baidu.com/s/13MKtdhnZBlfRQS-hW7ThTw 提取码:q3rv 这个是厂家提供的调试程序首次运行截图 可以看到这个是通过串口来调试的,选择对应的端口,波特率默认,点击open即可连接 接着点击第二部,Call按钮,测试下通没通 已经有数据了,这样我们就可以吧图片烧写进去了。剩下的就是根据自己开关屏幕的分辨率,制作好图片,传输过去就可以了。 剩下的更多技能小伙伴们可以慢慢摸索,这里仅抛钻引钰。 另外,由于这种开关不是我们日常接触的普工开关,价格较贵,周期较长,而我也是因为项目的原因,偶然接触到这种开关,后期的具体使用有机会在更新;还有哪里有问题的小伙伴,可以给我留言。能帮助大家的尽量帮助大家。 来源: CSDN 作者:

CC2430基础——按键控制开关实验

岁酱吖の 提交于 2020-01-05 02:05:07
本实验是用两个按键分别控制小灯的亮灭。在这个实验里用到的寄存器分别是P0,P1,P0SEL,P0DIR,P1DIR和P0INP。 P0/P1:P0/P1口寄存器; P0SEL:P0功能选择寄存器,主要是选择相应位的功能(0,普通I/O;1,外设功能)。 P0DIR/P1DIR:P0/P1口方向选择寄存器,主要是选择相应位的方向(0,输入;1,输出)。 P0INP:P0口输入模式寄存器,(0,上拉;1,下拉)。 两个LED灯的管脚分别为P1_0和P1_1, 其中,功能选择(P0SEL)定义为普通IO输出;方向选择P0DIR定义为输出   K键对应的是P0_5,CANCEL键对应的是P0_4,UP/DOWN/LEFT/RIGHT键对应的是P0_6   设置这几个按键的管脚的步骤分别是:功能选择(P0SEL),方向选择(P0DIR),输入模式选择(P0INP)。源代码见下: 按下确定按钮LED灯亮,再按一下灯灭,取消按钮也是一样的效果。 #define K1 P0_4 //按键引脚定义,以便控制红灯 #define K2 P0_5 void InitKey(void) //按键引脚初始化 { P0SEL &= ~0X30; P0DIR &= ~0X30; P0INP |= 0x30; //三态 } uchar KeyScan(void) //按键扫描函数 { if(K1 == 0) /

AVR单片机教程——拨动开关

♀尐吖头ヾ 提交于 2019-11-30 03:37:09
在按键的上方有4个拨动开关。开关与按键,在原理和使用方法上都是很类似的,但有不同的用途——按键按下后松开就会弹起,而开关可以保存其状态。 < switch .h> 定义了与开关相关的函数。 switch_status 对应 button_down , switch_changed 对应 button_pressed ,使用与按键是基本相同的。 这里通过一个异常简单的例子来演示开关函数的使用,并说明开关操作与按键的细微差别:使LED与开关状态保持同步。 仿照上一篇教程,我们可以简单地把 button_pressed 替换为 switch_changed : 1 #include <ee1/led.h> 2 #include <ee1/switch.h> 3 #include <ee1/delay.h> 4 5 int main() 6 { 7 led_init(); 8 switch_init(PIN_NULL, PIN_NULL); 9 while (1) 10 { 11 if (switch_changed(SWITCH_0)) 12 led_flip(LED_GREEN); 13 delay(40); 14 } 15 } 如果把按键拨到关(即下)再复位单片机,一切安好,但是如果一开始是开的状态,LED的状态会总是与开关相反。为什么呢?因为开关可以保存状态,这是第一个差别。 所以