单片机
Fortware
追求卓越,成功就会在不经意间喜欢上你 。
展开
-
高手经验之---谈51单片机/从51初学者到电子工程师
从 51 初学者到电子工程师SBL 整理简介:从 51 初学者到电子工程师 1关键字:单片机从 51 初学者到电子工程师 1从初学者到电子工程师一、前言很多电子工程师在某个方面精深钻研,成为某一个特殊领域的专家,从一开始的养家糊口、慢慢小有收益、最后宝马豪宅,也是有的;这些电子工程师可能没有全面掌握这些知识,因为这些行业用不上,例如,液晶显示器,很多行业就不需要转载 2013-05-10 21:00:37 · 8340 阅读 · 0 评论 -
牛顿迭代法在求解步进电机在不同脉冲对应的时刻的用处
前段时间研究步进电机的加减速(S曲线)控制,需要求出电机在不同脉冲对应的时刻值。需要求出电机在1,2,3....N个时刻的时刻t的值,公式如下:N( t) = ( f 0 + C) t + τC (exp(-t*τ) - 1) (1)变形为f(t) = ( f 0 + C) t + τC (exp(-t*τ) - 1) - N,需要求出N为不同值对应的t值N可以为0,1原创 2015-03-08 22:57:10 · 1229 阅读 · 0 评论 -
怎样在TI stellaris lm3sxxx 程序中使用C语言printf()函数进行串口输出
串口输出 UART 输出重定向 stellaris lm3sxxx原创 2015-03-08 21:39:43 · 1313 阅读 · 0 评论 -
Stellaris LM3Sxxx------双定时器设置
好久没更了,今晚继续。虽然Sterr原创 2014-11-17 22:28:13 · 1645 阅读 · 0 评论 -
基于51单片机的LCD1602显示
最近工作签了,没啥事,毕业设计题目还也没出来,打算重新学习一下单片机,弥补以前的知识。今天看着 LCD1602 的 datasheet试着自己编写的,仿真图中LCD1602使用LM016来代替,库里面没有LCD1602。先了解一下LCD1602的各引脚功能。如下图:原创 2013-12-07 10:23:18 · 9255 阅读 · 5 评论 -
51单片机矩阵键盘检测程序
#include #define uchar unsigned char#define uint unsigned intuchar code table[]={0xc0,0xf9,0xa4,0xb0, 0x99,0x92,0x82,0xf8, 0x80,0x90,0x88,0x83, 0xc6,0xa1,0x86,0x8e};void delaym原创 2013-12-05 17:07:44 · 2781 阅读 · 0 评论 -
51单片机P0口上拉电阻的深入研究
在讨论上拉电阻问题之前,首先需要清楚的是,P0是一个OC结构,也就是是相当与一个NPN的三极管,C极没有接任何东西,E极接地,B极接在一个数字电路的输出口上。所以没有接上拉电阻的时候,相当于CE没有任何电压,那么不管BE的电压是多少,三极管都不会导通和工作。接了上拉电阻后,也就是C极接了一个10K的电阻到5V,那么当BE的电压是0的时候,三极管截止,电阻没有导通,C极的电压等于5V当BE的电压为0转载 2013-11-21 20:34:35 · 4065 阅读 · 0 评论 -
关于51单片机IO引脚的驱动能力与上拉电阻
单片机的引脚,可以用程序来控制,输出高、低电平,这些可算是单片机的输出电压。但是,程序控制不了单片机的输出电流。 单片机的输出电流,很大程度上是取决于引脚上的外接器件。单片机输出低电平时,将允许外部器件,向单片机引脚内灌入电流,这个电流,称为“灌电流”,外部电路称为“灌电流负载”;单片机输出高电平时,则允许外部器件,从单片机的引脚,拉出电流,这个电流,称为“拉电流”,外部电路称为“转载 2013-11-21 19:50:08 · 2203 阅读 · 0 评论 -
十大滤波算法程序大全(Arduino精编无错版)
最近用Arduino做电子秤,为了解决数据的跳变研究了不少滤波算法。网上能找到大把的十大滤波算法帖子,每一篇都不太一样,都号称精编啊,除错啊什么的,可是放到板子里却没一个能正常跑起来的。于是决定自己整理一下这些程序,完美移植到Arduino中。所以大家看到这个帖子的时候,不要怀疑我重复发帖。我的代码都是经过反复试验,复制到Arduino中就能开跑的成品代码,移植到自己的程序中非常方便。而且转载 2013-11-21 22:34:36 · 6005 阅读 · 0 评论 -
printf 格式化字符串
static char buffer[200];void my_printf(const char *fmt, ...) { u8 i=0,len=0; va_list vArgs; va_start(vArgs, fmt); len = vsprintf(buffer, fmt, vArgs);//return the length of char b原创 2017-03-19 12:15:49 · 1282 阅读 · 0 评论