-
单片机常用宏
单片机常用宏
以前学51单片机的时候每次要配置寄存器的时候,虽然都知道看着器件手册去写,但是我还是觉得很痛苦,后来就有了这些宏,阅读起来会直观一点,不过敲的代码也得多一点,我后来写的代码都是用这些宏来封装寄存器操作的。
#ifndef MACRO_FUNCTION
#define MACRO_FUNCTION
//这个头文件里定义了一些宏定义,方便使用
/*********************************************************************************
* AssignBit / AssignFlag
*说明:
* 这个宏用来得到一个变量的某个或某几个位被赋值后的值
*参数:
* type 参数flag的类型
* flag 要赋值的变量
* which_bit
* 标明flag的哪几个位要被赋值
* val 表示要赋给flag的那几个位的值
*注意:
* 1. 对于宏,其参数不要用++i;之类的表达式!也不要直接使用调用函数得到的返回值!
* 2. 如果type是寄存器,那么它必须是可读的
*示例:
* u8 a = 0xf0;
* AssignBit(u8, a, BIT4 | BIT0, BIT0);
* 执行完后,a == 0xe1;
*备注:
* 1. 效率上, 如果参数(除flag外)都是常量, 编译器会自动优化, 如果参数是变量, 就算手动写代码也是这个样子的
* 2. (which_bit) 括号是为了保证 AssignBit(flag, BIT0 | BIT1, 0)之类的用法不会出错
- 2022-07-22 02:46:37下载
- 积分:1
-
单片机 串口程序
本程序用于单片机上位机的波形显示,C#语言,可直接使用
- 2022-02-09 19:08:55下载
- 积分:1
-
vb 串口通信
vb编写上位机与单片机通信,单片机采用STC12c5A60S2 ,单片机部分采用c就可编写,VB编写的上位机界面可以灵活设置。由于单片机一次只能接收一字节,因此程序中要处理好数据的通信协议,本程序中上位机向单片机发送时,采用定时发送,每次发送一字节,数据不会被丢失
- 2022-08-22 23:15:45下载
- 积分:1
-
基于单片机的电子万年历设计
基于单片机的电子万年历设计基于单片机的电子万年历设计基于单片机的电子万年历设计基于单片机的电子万年历设计基于单片机的电子万年历设计基于单片机的电子万年历设计基于单片机的电子万年历设计基于单片机的电子万年历设计
- 2022-06-26 22:34:02下载
- 积分:1
-
51流水灯例程
51单片机控制流水灯,单片机学习入门级实验,将会给你打开整个单片机世界大门。
- 2022-05-06 14:57:33下载
- 积分:1
-
单片机例程 C&汇编
单片机例程,有C语言的和汇编的版本,包括led灯的演示,按键操作,蜂鸣器继电器译码器等等,适合新手学习使用,并配有接线图。
- 2022-10-16 22:05:03下载
- 积分:1
-
基于51单片机MP3播放器系统Nokia5110全套资料
基于51单片机MP3播放器系统Nokia5110,有原理图、源程序,PCB图,BOM清单,资料非常全。用51实现音乐的播放并显示
- 2022-05-08 18:31:09下载
- 积分:1
-
基于蓝牙模块的模拟服务器通信(51单片机)
本代码使用单片机模拟服务器通信,使用手机的蓝牙串口助手连接单片机两个蓝牙模块(stc12c5a有两个窗口)进行单片机间的通信,同时将通信记录显示到OLED模块上。
- 2022-02-15 04:39:34下载
- 积分:1
-
MAX7219单片以及级联驱动程序
这个word版式是从百度上下载的,在原版中,作者只是写了驱动一片MAX7219的程序。
本人作为菜鸟,第一次使用MAX7219就用了两片级联来驱动15个数码管,按照原版程序驱动一片MAX7219是没有问题的,但是,驱动两片MAX7219就不行了。自己先认真看了MAX7219的DataSsheet,因为英语是个二把刀,看的迷迷糊糊,似懂非懂(可见英语还是很重要的),又在网上搜索也没发现有正确的程序(都是有点儿问题,上网贴出来请教各位大虾的),没办法只能自力更生了,终于调出来了。将原版增删修改,传上来共享,希望对以后某位菜鸟第一次使用MAX7219时有所帮助啦,嘿嘿!
- 2022-01-22 01:08:57下载
- 积分:1
-
MSP430F149定时数据采集程序
该程序是用于过程控制的,改一下采样时间,就可以用于运动控制,里面没有添加如PID控制算法,自己添加自己的控制算法就可以了,希望对大家有用!
- 2022-08-19 04:41:13下载
- 积分:1