- 博客(62)
- 资源 (1)
- 收藏
- 关注
原创 读书笔记-编写一个程序,以每行一个单词的形式打印输入
K&R C语言程序设计(第2版·新版)练习1-12题目要求:编写编写一个程序,以每行一个单词的形式打印其输入。习题解答上的答案:#include <stdio.h>#define IN 1 /*inside a word*/#define OUT 0 /*outside a word*//*print input one word per line*/ma...
2018-09-06 11:04:39
1702
4
原创 Matlab 编程指南阅读笔记- 2018/8/6
clf resetH=axes('unit','normalized','position',[0,0,1,1],'visible','off');set(gcf,'currentaxes',H);str='\fontname{隶书}归一化二阶系统的阶跃响应曲线';text(0.12,0.93,str,'fontsize',13);h_fig=get(H,'parent');set(...
2018-08-06 21:04:30
579
原创 第二章 软件如何工作(读书笔记)
https://github.com/Liaixue/Learning-to-ProgramLearning-to-ProgramThe Code2018/7/15 给kittenbook添加状态 在Chrome浏览器中添加kittenbook扩展程序。kittenbook显示名字、版本,以及时间。...
2018-07-15 16:37:26
298
原创 第一章 导言 【C程序设计语言 第2版】
学习一门新程序设计语言的唯一途径就是使用它编写程序。 The only way to learn a new programming language is by writing programs in it. 1.1 入门 第一个程序,打印出hello, world 学习编写程序文本,进行编译,加载,运行。#include <stdio.h>mian(){ printf("he
2017-09-18 21:38:08
553
原创 MATLAB中绘图语句的顺序
1、figure语法格式1:figure语法格式2:figure(n)一般放在第一步2、subplot语法格式:subplot(m,n,i)一般放在第二步3、plot线型绘图函数语法格式:plot(x,y,'s')一般放在第三步4、stem绘制离散序列图语法格式:stem(y)和stem(x,y)一般放在第三步5、titl
2017-05-18 13:19:34
2399
原创 Matlab 报错 Consider preallocating for speed
示例:k=5;a=zeros(k,k);for m=1:k for n=1:k a(m,n)=1/(m+n-1); endendfor i=1:1:10 b(i)=i+20;end报错如下:ExplanationThe size of the indicated variable or array appears to be
2017-05-18 11:13:33
1967
原创 PIC18F45K80 将RA0等配置为数字输入I/O
1、在实际应用中的发现,虽然输入一直为高电平,但是I/O口检测到一直为低在网上找到了解决问题的办法http://bbs.21ic.com/icview-85731-1-1.html解释:并非只有18系列;所以PIC系列的单片机,大多在上电时AD.数字IO复位脚均默认为AD输入口;中档系列的作为输入时仍可以读出IO,输出关闭的,中档的还有些引脚,比如,比较器等也需要关
2017-04-08 15:38:54
1854
原创 测试数据
0 0 0 0.(**V0 0 1 0.(**V0 1 0 0.(**V0 1 1 0.(**V1 0 0 0.(**V1 0 1 0.(**V1 1 0 0.(**V1 1 1 0.(**V2 0 0 0.(**V2 0 1 0.(**V2 1 0 0.(**V2 1 1 0.(**V3 0 0 0.(**V3 0 1 0.(**V3 1 0 0.(**V3 1 1 0.(**V4 0 0
2017-03-20 14:45:43
350
原创 MPLAB X XC8编译器件入门 基于PIC18F45K80
从MPLAB HI-TECH的编译器开始入门PIC单片机,后知后觉发现PIC几年前已经推出了MPLAB X以及XC8等编译器,想想还是努力学习新知识,跟上外面的开发工具。
2017-03-07 08:56:00
3609
原创 PIC18F45K80 USART
初期参考了三篇文章1、PIC18F45K80单片机串口调试总结http://blog.csdn.net/sandyde123/article/details/480915352、用示波器 查看波特率是多少?http://blog.csdn.net/androidolblog/article/details/476591493、关于示波器测485串
2017-02-28 16:45:39
3856
转载 机器人端(ROS/UBUNTU)开机自启动的方法和步骤
(一)如果人工手动启动机器人,当给机器人加电时候,我们需要ssh到机器人端,然后启动激光的驱动launch文件,机器人启动的launch文件,导航的launch文件等,这对机器人的操作很不方便。登录turtlebotworkstation@workstation:~$ ssh turtlebot@192.168.1.143turtlebot机器人室内定位和导
2017-02-16 16:10:21
3993
转载 ROS开机自启动
在Linux系统中,/etc/rc.loacal开机启动脚本是运行在用户登陆脚本之前,所以有些童鞋在调试的时候如果因为失误造成阻塞,系统将无法进入到用户界面,从而无法实现人机命令行交互模式,也就是大家所谓的死机现象。在这里,我们将ROS的开机启动功能放到用户的登陆后的运行脚本(~/.bashrc)里,这样可以保证大家在编程失误的时候不至于因为阻塞而造成系统死机。三.实操手册:1
2017-02-16 14:35:16
2392
1
转载 用Altium Designer 在PCB板中制作LOGO的方法详解
http://wenku.baidu.com/view/14523d30f242336c1eb95eb8.html?re=view
2016-11-22 11:14:43
3662
原创 USB转TTL 与电路板的连接
USB转TTL的硬件设备:USB转TTL主机一台;芯片选用PL-2303HXUSB转TTL刷机线,采用进口PL2303HX芯片。连接上电脑并安装驱动后,电脑即扩展出一个COM3或COM4....等的串口,配合相应软件就能对路由器、机顶盒或接收机等各种TTL接口的设备系统进行调试、升级或更新等,比九针(DB9)串口接口转TTL的线适用性更广,因为大部分笔记本电脑都没有预留COM口
2016-09-11 15:39:03
24307
3
原创 关于C语言中的a++,++a,a--,--a;
int a=5;int b=0,c=0,d=0,e=0;b=a++;//运算前a为5printf("%d %d",b,a); // b为5,a为6c=++a;//运算前a为6printf("%d %d",c,a); // c为7,a为7d=a--;//运算前a为7printf("%d %d",d,a); // d为7,a为6e=--a;//运算前a为6
2016-06-22 23:00:39
13824
原创 红外测温传感器的现状
主流传感器: 1、迈来芯 非接触式 MLX90614 红外测温模块 温度传感器模块 2、珀金埃尔默 Perkinelmer 红外热电堆传感器 A2TPMI334-L5.50AA120
2016-05-09 21:09:57
6696
原创 实现高精度ADC测量的条件
1、基准源要稳定2、信号频率和采样频率和满足一定的条件3、ADC的输入阻抗要满足要求4、转换速度的设置要合适5、ADC分辨率和绝对精度对采样结果的影响6、ADC模块的电源对转换结果的影响。7、。。。目前,出现的ADC采集波动大的原因,主要是基准电源。直接引芯片的电压,若要实现精准的信号采集,需要独立的电源芯片的输出电压作为ADC的基准电压源。
2016-04-25 08:53:35
1906
原创 LM358使用注意事项
LM358是双运放组成的运算放大器,可以单电源供电,也可以双电源供电。常用来做电压信号采集的前端电压跟随器,同时起到增加输入阻抗的作用,避免影响被测量的电压值。LM358当工作在单电源5V供电时,当IN+从0~5V输入,其输出电压OUT只能从0~3.7V,而不是0~5V,也就是说,当IN+输入0~3.7V时,电压可以跟随到OUT,当输入大于3.7V时,输出将还是3.7V,大不了了。
2016-03-23 16:44:28
12166
1
原创 2016.2.17问题总结
1、完成主板和抽屉板之间的通讯。2、在操作I/O输出的电平时,用操作LATAbits.LATA0的方式代替操作PORTAbits.RA0的方式。
2016-02-17 17:10:36
658
转载 PIC18F45K80 CAN通讯示例代码
这里转载的是别人现成的代码,进行了实际的编译和下载运行,罗列了实际运行中出现的问题,主要是证明代码的可靠性。1、新建工程、选择好器件、选择编译环境,我当时选择的是C:\Program Files (x86)\Microchip\mplabc18\v3.47文件夹下的C18编译器。实际操作时,我当时误选了_mplink.exe,实际上选择的应该是mplink.exe文件。编译时出现错误,重新选择
2016-02-17 09:29:04
7859
3
原创 充电站程序
program.c/******************************************** program8.c 说明:带CAN通讯功能的两路充电器程序代码 主控芯片:PIC16F887 引脚关系: 芯片时钟:16Mhz CAN通讯速率:125Kb/s Author:Alex Date:2016/01/28 12:09 Fi
2016-01-28 12:27:28
3153
原创 充电器故障处理办法
一:过充保护和恢复 当任意一电芯的电压 VCELL大于过充电保护电压 3.85v且持续时间超过过压保护延时 1s时,保护板认为充电过压状态发生,充电 MOSFET关闭,此时禁止向电池包充电,PC客户端会提示过充告警。当发生过压后最高电芯的电压 VCELL 恢复到过充恢复电压 3.65 的时候,保护板认为过充电状态已经解除,充电 MOSFET被打开,充电器可以对电池包充电,同时PC客户端告警
2016-01-13 16:18:36
2685
原创 画板记录
1、24抽屉的主板中,IS01、IS02,图中引脚和实际的引脚不对应,下次画板时,此处做修改。本次测试,只是用飞线代替。2、R143的丝印被过孔遮挡,下次画板时,做修改。
2016-01-06 20:06:21
416
原创 2515头文件
#ifndef _2515_H_#define _2515_H_// write your header here//#pragma nolist/********************************************************************* * CAN MCP2510 C definitions file
2015-12-21 17:10:22
456
转载 MCS-51单片机汇编指令详解
以累加器为目的操作数的指令MOV A,RnMOV A,directMOV A,@RiMOV A,#data这组指令功能是把源地址单元中的内容送入直接地址,源操作数不变。第一条指令中,Rn代表的是R0-R7。第二条指令中,direct就是指的直接地址。而第三条指令中,就是我们刚才讲过的。第四条指令是将立即数data送到A中。下面我们通过一些例子加以说明:M
2015-12-09 19:37:26
10065
2
原创 学习安排-基础知识回顾
暂时计划:单片机原理及接口技术的课件http://wenku.baidu.com/view/db81d00a0b4c2e3f572763df.html?from=search微机原理与接口技术的课件http://wenku.baidu.com/link?url=FevDiOXfNHuZBHPJjUw49SX9XqZ1nXdP6_xbnXp0-Skcrb2xLg4St
2015-12-09 16:38:35
417
转载 嵌入式系统
第一.工程师眼中的“嵌入式系统” 在工程师看来:着重理解“嵌入”的概念,主要从三个方面上来理解。 1.从硬件上,将基于CPU的处围器件,整合到CPU芯片内部,比如早期基于X86体系结构下的计算机,CPU只是有运算器和累加器的功能,一切芯片要靠外部桥路来扩展实现,象串口之类的都是靠外部的16C550/2的串口控制器芯片实现。目前的这种串口控制器芯片早已集成到CPU内部,还
2015-12-09 15:45:04
578
转载 嵌入式系统的分层与专业的分类
嵌入式系统的分层与专业的分类。 嵌入式系统分为4层,硬件层、驱动层、操作系统层和应用层。 1、硬件层,是整个嵌入式系统的根本,如果现在单片机及接口这块很熟悉,并且能用C和汇编语言来编程的话,从嵌入式系统的硬件层走起来相对容易,硬件层也是驱动层的基础,一个优秀的驱动工程师是要能够看懂硬件的电路图和自行完成CPLD的逻辑设计的,同时还要对操作系统内核及其调度性相当的熟悉的。但硬件平
2015-12-09 10:59:14
2629
转载 高单片机抗干扰
如何提高单片机抗干扰让你少走弯路搞过产品的朋友都有体会,一个设计看似简单,硬件设计和代码编写很快就搞定,但在调试过程中却或多或少的意外,这些都是抗干扰能力不够的体现。下面讨论一下如何让你的设计避免走弯路:抗干扰体现在2个方面,一是硬件设计上,二是软件编写上。这里重点提醒:在MCU设计中主要抗干扰设计是在硬件上,软件为辅。因为MCU的计算能力有限,所以要在硬件上花大工夫。看看干扰
2015-12-02 10:12:17
610
原创 单片机C语言代码-代码格式
/****************************************fuction: void BQ_config(void)description:BQ76930初始化Parameters: None******************************************/
2015-11-18 09:08:20
2667
1
原创 2015/10/13
换了新的电脑,在新的工作机上,下载安装了Altium Designer 10.9.接下来的时间里,要充分利用时间搭建开发平台。做好嵌入式相关的开发工作。
2015-10-13 01:14:04
433
原创 PIC16F887 RB0外部中断(2)
#include #include __CONFIG (CP_OFF&WDTE_OFF&BOREN_ON&PWRTE_OFF&FOSC_HS&WRT_OFF&LVP_OFF&CPD_OFF); /*配置位 CP_OFF,代码保护位,程序存储器代码保护关闭; WDTE_OFF,看门狗定时器使能位,看门狗定时器关闭,可以通过WDTCON寄存器的SWDTEN位使能; B
2015-09-22 15:54:13
3934
原创 PIC RB0外部中断程序
#include #include //__CONFIG (CP_OFF&WDTE_OFF& BOREN_OFF&PWRTE_OFF &FOSC_HS&WRT_OFF&LVP_OFF&CPD_OFF);__CONFIG (CP_OFF&WDTE_OFF&BOREN_ON&PWRTE_OFF&FOSC_HS&WRT_OFF&LVP_OFF&CPD_OFF);//__CONFIG (CP
2015-09-18 18:08:54
3144
原创 PICC C中的函数
PICC中函数,由于堆栈资源的原因,在PICC中的函数不支持函数的递归调用。1、带返回值的函数2、无返回值的函数在PICC中,我们直接使用寄存器的名字和位名,这些都归功于相关的头文件。还有一些宏定义也在这些头文件中。’PIC.H‘文件是PICC编译必需的头文件。根据用户所选用的单片机芯片型号自动包含相应的头文件。定义常用的嵌入汇编宏定义。配置位定义、EEPROM初始
2015-09-14 09:44:57
1559
原创 数制与表示法
1、在PICC程序中,支持的数据格式有二进制、十进制、八进制和十六进制2、参与逻辑运算的量本身就是逻辑量,运算结果也是逻辑量,而参与运算的量是整形量,运算结果也是整形量。 端口置1,按位或;//用按位或,对某位置一,其他位不变端口清0,按位与;//用按位与,对某位清零,其他位不变位取反,按位异或;//用按位异或,对某位取反,其他位不变在PICC中,判断某一位是否为1,可
2015-09-14 08:16:50
755
原创 宏定义
宏定义的使用宏分为不带参数的宏和带参数的宏1、不带参数的宏定义格式#define 标识符 字符串符号常量使用宏定义可以提高程序的通用性和易读性,减少输入错误和便于修改。。宏定义末尾不加分号。宏定义通常在文件的最开头。 宏定义不分配内存2、带参数的宏定义格式#define 宏名(参数表) 字符串 宏名和参数的括号间不能有空格带参
2015-09-14 07:08:21
491
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人