- 博客(42)
- 资源 (3)
- 收藏
- 关注
原创 单片机开发 --- 串口通信
单片机开发 — 串口通信一、串行通信接口标准 – RS-232C接口RS-232C是EIA(美国电子工业协会)1969年修订RS-232C标准。RS-232C定义了数据终端设备(DTE)与数据通信设备(DCE)之间的物理接口标准。机械特性RS-232C接口规定使用25针连接器,连接器的尺寸及每个插针的排 列位置都有明确的定义。(阳头)功能特性二、80C51串行口的控制...
2019-12-05 13:53:29
413
原创 单片机开发 --- 定时器中断
单片机开发 — 定时器中断一、电路图二、电路原理使用定时器0中断,在定时器中断的事件处理中使P20引脚取反,控制D1的LED灯开关。三、代码#include "reg52.h" //此文件中定义了单片机的一些特殊功能寄存器typedef unsigned int u16; //对数据类型进行声明定义typedef unsigned char u8;sbit led=...
2019-12-03 18:09:39
522
原创 单片机开发 --- 定时/计数器
单片机开发 — 定时/计数器一、定时/计数器概要51单片机有两组定时器/计数器,因为既可以定时,又可以计数,故称之为定时器/计数器。定时器/计数器和单片机的CPU是相互独立的。定时器/计数器工作的过程是自动完成的,不需要CPU的参与。51单片机中的定时器/计数器是根据机器内部的时钟或者是外部的脉冲信号对寄存器中的数据加1。有了定时器/计数器之后,可以增加单片机的效率,一些简单的重复加...
2019-12-03 17:54:01
675
原创 单片机开发 --- CPU时序
单片机开发 — CPU时序振荡周期:为单片机提供定时信号的振荡源的周期(晶振周期或外加振荡周期)振荡周期又称S周期或时钟周期。状态周期:2个振荡周期为1个状态周期,用S表示。机器周期:1个机器周期含6个状态周期,12个振荡周期。指令周期:完成1条指令所占用的全部时间,它以机器周期为单位。例如:外接晶振为12MHz时,51单片机相关周期的具体值为:振荡周期=1/12us;状态周期=...
2019-12-03 16:59:59
499
原创 单片机开发 --- 外部中断
单片机开发 — 外部中断一、电路图二、电路原理使用K3按键触发外部中断0,在中断0的事件处理中使P20引脚取反,控制D1的LED灯开关。三、代码#include "reg52.h" //此文件中定义了单片机的一些特殊功能寄存器typedef unsigned int u16; //对数据类型进行声明定义typedef unsigned char u8;sbit k3...
2019-12-03 11:29:34
759
原创 单片机开发 --- 中断
单片机开发 — 中断一、中断CPU在处理某一事件A时,发生了别一事件B请求CPU迅速去处理,CPU会暂时中断当前的工作,处理事件B。当事件B处理完毕后,返回原来事件A并在中断的位置继续处理事件A,这过程称为中断。二、中断优点分时操作。CPU可以分时为多个I/O设备服务,提高计算机的利用率实时响应。CPU能够及时处理应用系统的随机事件,系统的实时性大大增强。可靠性高。CPU具有处理设备...
2019-12-03 10:22:27
365
原创 单片机开发 --- 8X8LED点阵
单片机开发 — 8X8LED点阵电路图引脚D0 ~ D7 接的是点阵的行,引脚P0~P7接的是点阵的列74HC595芯片74HC595芯片是8位串行输入8位串行或并行输出,串行到并行的数据转换。通过SRCLK上升沿,将SER的状态(高电平为1,低电平为0)以左移的方式存到芯片的寄存器中;通过RCLK上升沿,把寄存器中的8位以并行的方式输出(D0~D7)。电路原理根据电路图可知,当D...
2019-11-20 14:39:49
3285
原创 单片机开发 --- 矩阵按键
单片机开发 — 矩阵按键电路图二、按键原理按键一端接芯片引脚(高电平),另一端接低电平,当按键按下时,芯片引脚变低电平,通过不停地判断引脚状态,可实现按键的监控。三、矩阵按键监控原理根据电路图可知,将P10 ~ P13设为高电平,P14 ~ P17设为低电平,可监控矩阵列的按键;将P14 ~ P17 设为高电平,P10 ~ P13设为低电平,可监控矩阵行的按键,由行列可得所按下的按键。...
2019-11-19 17:51:59
907
原创 单片机开发 --- 数码管显示
单片机开发 — 数码管显示一、电路图二、138译码器用三个IO控制八个IO(三个控制 IO 就像三位数的二进制,选中的一个IO为低电平,其余为高电平,如:111 —>Y7为低电平,其余为高电平)三、74HC24574HC245 为八总线收发器芯片,即可以将数据从A 总线端口传送到B 总线端口,也可将数据从B 总线端口传送到A 总线端口。传送方向由方向控制管脚DIR(芯片1 脚)...
2019-11-19 16:57:56
1465
原创 单片机开发 --- 点亮LED
单片机开发 — 点亮LED电路图需求点亮D1的LED,因为LED中的一端接VCC,另一端接芯片的P20引脚,所以使P20引脚为低电平的时候,LED就会亮代码#include "reg52.h"sbit led=P2^0;void main(){ while(1) { led=0; } }...
2019-11-19 15:43:39
359
原创 单片机开发 --- 准备
单片机开发 — 准备一、处理芯片 - STC89C52二、开发环境 - win7+Keil4三、新建单片机项目打开Keil—>Project—>New μVision Project,在弹出框中添加项目文件(.uvpro的格式,一般新建一个独立的项目目录,在目录中添加)四、选择处理芯片 - AT89S52新建单片机项目后,会弹出窗口选择CPU,用Atmel中的AT89S52...
2019-11-19 15:13:04
254
原创 Android ListView ViewHolder 工具类
Android ListView ViewHolder 工具类一、思路1、根据ViewGruop对象与id,获取子View 2、利用Tag与Map,保存ViewGroup中的所有子View, 3、使用泛型返回子View二、实现步骤1、利用id,获取子View并以泛型返回 public static T get(View view, int id) 2、获取Tag,
2018-01-08 17:17:58
448
原创 Android—SharedPreferences的使用
注:SharedPreferences通过Key-Value的形式存储数据到手机一、获取SharedPreferences对象SharedPreferences sp = getSharedPreferences("xxx",MODE_PRIVATE); //需要在Context中才能获取//保存文件为:/data/data/包名/shared_prefs/xxx.xml 保存文件
2017-07-08 11:19:39
169
原创 Android数据库的使用
注:Android中是使用Sqlite数据库的一、创建数据库利用继承SQLiteOpenHelper类创建数据库帮助类,由此类创建数据库public class DbOpenHelper extends SQLiteOpenHelper { //数据库文件名 public static final String DB_NAME = "contact.db";
2017-07-08 10:43:32
276
原创 Android触摸事件传递的简单理解
触摸事件是一个自顶向下的过程,最早发送在Activity,接着Activity向下传递到第一个ViewGroup,ViewGroup将事件接着往下传递,一直传到需要处理这个事件的类如果一直没有处理,事件就会住上传递,一直到Activity。触摸事件涉及到的方法:dispatchTouchEvent:return true //当前的类消费完触摸事件,不向下级传递return fal
2017-07-07 12:42:58
230
原创 RxBus的使用(基于RxJava2.0)
注:RxBus其实就是Rxjava的一种使用方法新建一个单例RxBus类public class RxBus { private static volatile RxBus mInstance; private final Subject bus; private RxBus() { bus = PublishSubject.create
2017-07-07 11:52:29
463
原创 Android RxJava2.0的简单使用
注:RxJava使用类似于观察者模式,并可以让观察者和被观察者在不同线程中运行,以达到异步处理的效果一、定义被观察者Observable observable = Observable.create(new ObservableOnSubscribe() { @Override public void subscribe(ObservableEmitter o) t
2017-07-07 11:15:28
286
原创 EventBus的使用
定义事件数据自定义一个事件类,用于传输数据public class Event { }接收事件一、在生命周期开始与结束的地方注册和注销EventBus@Overrideprotected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);
2017-07-07 10:31:15
204
原创 SQL常用基础语句-增删改查
一、增插入新的单行inset intto (列名) values(列值)例:insert into Students(姓名,性别,出生日期) values(‘张三’,‘男’,‘1990/1/1’)二、删删除满足条件的一行delete from where 例:delete from Students where name='张三'三、改更新满
2017-07-06 23:30:42
374
OpenGL_DEMO
2017-09-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人