AT89C51串并转换驱动数码管实验指导
2012-09-04 134
器件:74hc595.引脚说明:SDA:数据输入口。SH_CP:数据输入控制端,在每个 SH_CP的上升沿, SDA口上的数据移入寄存器, 在 SH_CP的第 9个上升沿, 数据开始从 QS 移出。ST_CP:数据置入锁存器控制端。Q0~Q7:数据并行输出端。 数据从SDA 口送入 74HC595 , 在每个 SH_CP的上升沿, SDA口上的数据移入寄存器, 在 SH_CP .. [查看全文]
基于89C51单片机的环境噪声测量仪
2012-09-03 潘启勇 娄维鸿 邬正义 40
摘 要 介绍了一种用单片机构成环境噪声测量系统的设计方法,给出了相关硬件框图和软件流程图。经校正测量误差小于1dB,测量范围为40~96dB,可用于一般环境下的噪声测量。 关键词 单片机 环境噪声 声压级 测量 环境噪声监测,是人类提高生活质量,加强环境保护的一个重要环节,在各大城市的繁华街区和居民区,已有大型 .. [查看全文]
Keil在C中嵌入汇编
2012-08-09 52
很多用C语言编单片机程序的朋友,有时候会碰上"精确延时",而用C又要搞清楚它的编译,往往在这个时候就想到了用汇编来编写延时,具体怎么在C中嵌入汇编呢?其实也比较简单,如下图,在C文件中要嵌入汇编的地方用#pragma asm和#pragma endasm分隔开来,这样编译时KEIL就知道这中间的一段是汇编了。 在有加入汇编的文件中 .. [查看全文]
C51实现PID算法
2012-07-23 10
关于PID的算法实现,很多书上都讲了。但是,最近真正要用PID算法的时候,发现书上的代码在我们51上来实现还不是那么容易的事情。简单的说来,就是不能直接调用。仔细分析你可以发现,教材上的、网上现行的PID实现的C语言代码几乎都是用浮点型的数据来做的,可以想象,如果我们的计算使用浮点数据,那我们的51单片机来运行 .. [查看全文]
Keil C51下快速小数运算算法
2012-06-11 廖仕利 陈渝光 万文略 12
1 引言实时控制系统程序设计中,常涉及到小数运算问题.计算机系统中用二进制表示小数的方法有定点数表示法和浮点数表示法.采用浮点数表示法表示的小数范围大、精度高,但程序代码长,运算速度慢.定点数表示的小数范围小、精度低,但程序代码短,运算速度快.使用C语言设计程序具有程序可读性强,编程方便等优点,但按常规 .. [查看全文]
如何在 KEIL C51(v6.21) 中调用汇编函数的一个示例
2012-06-02 9
如何在 KEIL C51(v6.21) 中调用汇编函数的一个示例 [ycong_kuang]有关c51调用汇编的方法已经有很多帖子讲到,但是一般只讲要点,很少有对整个过程作详细描述,对于初学者是不够的,这里笔者通过一个简单例子对这个过程进行描述,希望能对初学者有所帮助。几年来,在这个论坛里笔者得到很多热心人指导,因此也希望藉此尽 .. [查看全文]
KeilC51怎样将子程序段定位在固定的地址位?
2012-06-02 7
以下2问题均要用C51解决 1。 怎样将1个子程序段定位在1个固定的地址位置? 例如将 INT BCD2HEX(INT XX)定位在1000H 2。 HOW在EEPROM 中固定的位置存放1字符串? 如在200H处放“COPYRIGHT 2001-11” 答: 函数定位与变量定位... 1、函数定位: 假如要把C源文件 tools.c 中的函数 int BIN2HEX(int xx) { ... } 放 .. [查看全文]
I2C总线高频头控制Keil C51程序(PLL芯片为TSA5522系列)
2012-06-02 79
/*I2C总线高频头控制Keil C51程序(PLL芯片为TSA5522系列)*/ //--------------------------------------------------------------------------// //源程序大公开// //(c) Copyright 2001-2003 xuwenjun// //All Rights Reserved// //V1.00// //----------------------------------------------------------- .. [查看全文]
浅谈C51内存优化
2012-06-02 11
对 51 单片机内存的认识,很多人有误解,最常见的是以下两种超过变量128后必须使用compact模式编译128以上的某些地址为特殊寄存器使用,不能给程序用由于内存比较小,一般要进行内存优化,尽量提高内存的使用效率。以 Keil C 编译器为例,small 模式下未指存储类型的变量默认为data型,即直接寻址,只能访问低 128 个字节, .. [查看全文]
一种基于C51的多任务机制及应用
2012-06-02 王辉堂 颜自勇 陈文芗 8
传统的单片机程序一般采用单任务机制,单任务系统具有简单直观、易于控制的优点。然而由于程序只能按顺序依次执行,缺乏灵活性,只能使用中断函数实时地处理一些较短的任务,在较复杂的应用中使用极为不便。嵌入式多任务操作系统的出现解决了这个问题。在多任务系统中,可以同时执行多个并行任务,任务之间可以相互跳转。但 .. [查看全文]
93C46/93c06/93c56/93c66/93c86的驱动程序(C51)
2012-06-02 17
/*———————————————————— 〖说明〗SPI总线驱动程序 包括的普通封装标准模式,特殊封装标准模式 默认11.0592Mhz的晶振。 〖文件〗93CXX.C ﹫2003/5/12 —&mdas .. [查看全文]
uart驱动(for keil rtx)
2012-06-02 26
#define UART0_BPS9600 #define UART0_RXBUF_SIZE 32 #defineUART0_TXBUF_SIZE 32 #define UART_NO_ERR0 #define UART_TX_EMPTY1 extern void uart0_init (void); extern void uart0_putc (uint8_t c); extern void uart0_puts (uint8_t *pbuf, uint16_t len); extern uint8_t uart0_getc (void); typedef struct .. [查看全文]

本站简介 | 意见建议 | 免责声明 | 版权声明 | 联系我们
CopyRight@2024-2039 嵌入式资源网
蜀ICP备2021025729号