python学习之序列化
摘要:序列化:不同编程语言之间传递对象需要序列化成标准格式,有XML /JSON,json格式化为字符串,UTF-8编码,速度快,切实标准格式。JSON 和 Python内置的数据类型对应如下: pickling /unpickling :指的是内存变化的量存到磁盘或进行传输,反序列化指的是从磁盘或网络传
阅读全文
posted @
2017-05-31 15:20
杰瑞鼠
阅读(143)
推荐(0) 编辑
python学习之串口编程
摘要:# coding=utf-8import serial ser=serial.Serial('com1',9600)ser.write(b"hello")while 1: ser.write(ser.read(3))ser.close()
阅读全文
posted @
2017-05-29 18:02
杰瑞鼠
阅读(303)
推荐(0) 编辑
python学习之常用模块
摘要:第三方模块网站https://pypi.python.org/pypi,按名字搜索 pip安装。 一pip安装: 命令行定位到C:\Pythonxx\Scripts下 运行 easy_inatall pip,用pip安装其它模块: cmd命令行下pip install xxx 二 pyserial安
阅读全文
posted @
2017-05-29 15:45
杰瑞鼠
阅读(148)
推荐(0) 编辑
python学习之图形界面编程:
摘要:一 tkinter:tkinter是python自带的支持tk的库,python代码调用tkinter->tk->操作系统提供的本地GUI(TKL语言开发))完成界面开发,不需要安装任何第三方程序。Tkinter教程第二版https://link.zhihu.com/?target=http%3A/
阅读全文
posted @
2017-05-28 15:52
杰瑞鼠
阅读(603)
推荐(0) 编辑
python学习之IO:
摘要:输入输出兼程IO操作,有同步(速度不匹配时死等)和异步(轮询和消息通知,复杂而高效) 一 文件操作函数: 文件打开:f=open("带路径的文件名“,“操作类型 r/rb/w/a”,"编码”,“错误处理”),//中文的Windows系统上,默认使用cp936(就是gbk编码) 文件读写:f.read
阅读全文
posted @
2017-05-28 14:19
杰瑞鼠
阅读(282)
推荐(0) 编辑
python学习之调试:
摘要:编写的代码不会都能完好运行,所以需要调试,解决错误和异常,常有几种方法: 1 通过printf()来打印信息。但在发布时无法删除; 2 通过assert 条件表达式,‘提示信息’;启动解释器时通过 -O参数来关闭 提示信息:python3 -O 3 通过logging日志来输出信息,并且可以设置日志
阅读全文
posted @
2017-05-27 19:03
杰瑞鼠
阅读(420)
推荐(0) 编辑
python学习之调试 错误捕捉及处理
摘要:1 捕捉错误:try except Err_Case1: pass except Err_Case2: pass else: 正常情况: finally: 无论是否异常都要 处理的代码 with语句。 2 触发异常: if true raise 语句
阅读全文
posted @
2017-05-25 23:47
杰瑞鼠
阅读(154)
推荐(0) 编辑
python之面向对象
摘要:python即一门动态的面向对象的语句,面向对象的几个主要概念: 类:就是抽象的模板并不分配内存,封装了类属性和方法(通过类的属性和方法可以完成对其所有的操作)。 实例:就是类创造的具体对象,分配内存。 继承:最原始的是object,创造一个类可以从父类继承来也可以原始创造(object),子类继承
阅读全文
posted @
2017-05-25 22:07
杰瑞鼠
阅读(159)
推荐(0) 编辑
python学习之模块:
摘要:每个.py文件就是一个以文件名作为区别的模块,模块化编程便于维护。其它模块要调用某个模块的变量和函数就要用import 模块,然后通过模块.函数、模块。变量来引用。 为防止模块间变量和函数乃至模块名的冲突,Python 又引入了按目录来组织模块的方法,称为包( Package) ,这样即使模块名有重
阅读全文
posted @
2017-05-25 15:10
杰瑞鼠
阅读(216)
推荐(0) 编辑
python学习之内部函数:
摘要:python内置函数表:https://docs.python.org/3/library/functions.html 1 判断数据类型的函数:isinstance(变量, 待要判断的类型) 或type() 2判断某个对象是否可迭代:通过 collections 模块的 Iterable 类型判断
阅读全文
posted @
2017-05-24 09:57
杰瑞鼠
阅读(232)
推荐(0) 编辑
python学习之高级特性:
摘要:切片:对列表、元组、字符串、字典取中间的一部分,在C中一般是通过for循环拷贝/memcpy/strcat等操作。而python提供了更方便的切片操作符[m:n]:前闭后开,如果从0取m可以省略;如果只用[:]就是切整片;也可以从尾端切片[-m:]:前后的闭区间。 列表生成式:List(range(
阅读全文
posted @
2017-05-24 09:24
杰瑞鼠
阅读(170)
推荐(0) 编辑
python学习之结构语句
摘要:一 循环语句: 1.1 for x in rang(n) :#rang(n)生成左闭右开区间的序列 1.2 while x 条件n: 二条件语句: if 条件表达式: elif 表达式: elif 表达式: ... else: 三 break continu 四:函数: 4.1 定义:def fun
阅读全文
posted @
2017-05-23 22:59
杰瑞鼠
阅读(151)
推荐(0) 编辑
python学习之列表元组,字典
摘要:list:元素性质可以不一致,元素还可以是list,可类似数组方法进行索引(也可以用负数索引,-1表示最后一个),可用.append('')进行动态增加,可用pop()删除最后一个或者pop(i)删除指定元素。方法有:排序.sort();替换.replace('元素) tuple:用圆括号括起来的一
阅读全文
posted @
2017-05-23 15:23
杰瑞鼠
阅读(155)
推荐(0) 编辑
python学习之字符编码
摘要:字符串涉及到编码:ascii gbk gb2312 unicode uft-8 对于英文字符ASCII(可以看成utf-8的子集)就可以了,中文用gbk/gb2312; unicode:世界统一(兼容所有语言)的计算机系统编码(内存中),但是存储时比较浪费空间,所以存到硬盘或者输出查看时用uft-8
阅读全文
posted @
2017-05-23 00:52
杰瑞鼠
阅读(210)
推荐(0) 编辑
python语法:
摘要:1 #开始注释,‘’‘ ‘’’可以看做是文本字符串也可以看做是块注释;”:“开始后的缩进视为一个代码块类似{};缩进没有规定,但一般4个空格,注意:粘贴复制代码一定要检查缩进;大小写敏感; 2 数据类型 整数:包括正整数和16进制表示; 浮点数:带小数点的数,可以用数学表示或者科学表示:1.23e-
阅读全文
posted @
2017-05-22 19:02
杰瑞鼠
阅读(186)
推荐(0) 编辑
python学习之环境搭建 输入输出
摘要:一 环境搭建: 在安装好python2.7之后就可以利用其命令行和交互式模式进行基本的输入和输出测试了,但这样编码无法保存,所以就需要用到好用的编辑器和环境搭建了,这里用uestdio. 1.1打开uestdio,高级-设置-intergrated application -python -定位py
阅读全文
posted @
2017-05-22 15:18
杰瑞鼠
阅读(212)
推荐(0) 编辑
C51存储的优化
摘要:我们知道51单片机只有128BYTE的RAM, 有的增强型有XRAM,此时编程时就要注意,否则就有可能超出空间 1 对于各模块的全局变量、静态变量、全局枚举型常量,静态枚举型常量、个别操作存储(如外部spi_flash)的局部变量都要修饰成XDATA类型,从而节省空间。 2 对于bit型变量,可以自
阅读全文
posted @
2017-05-16 16:12
杰瑞鼠
阅读(285)
推荐(0) 编辑
c51中的bit,SBIT
摘要:在51单片机的0x20~0x2f,是bdata区既可以字节寻址又可以位寻址。用法: 1 先用bdata存储类型关键字 定义变量,注意其值就是地址 。unsigned char bdata MYBITS,unsigned int bdata BYBITS16; 2 用bit定义用户所需的位变量,fla
阅读全文
posted @
2017-05-16 14:34
杰瑞鼠
阅读(909)
推荐(0) 编辑
关于IO模拟时序(SPI)的注意事项
摘要:原则:有硬件I2C、SPI时尽量用硬件操作,省去IO模拟繁琐的时序调试。但在内部资源不够时就要用IO模拟总线了。 关于短延时:模拟时序时是否需要延时要看MCU与device的相对速度。比如I2C如果400K的速率和MCU动辄几十M的速率不再一个量级,肯定要通过延时调整时序;但对于SPI因为其速度很高
阅读全文
posted @
2017-05-12 19:03
杰瑞鼠
阅读(1002)
推荐(0) 编辑
预处理的几个问题
摘要:一:解决块注释/**/不能嵌套的问题: 我们知道行注释//可以多层嵌套和逐层取消,而块注释/**/不能嵌套或不能与//混用,否则有可能出现编译错误。通常我们在程序调试时如果要取消一大段代码,可以用条件编译#if 0 #endif实现 二:避免头文件的重复包含: 假如a.h中自定义了一个结构体,在b.
阅读全文
posted @
2017-05-12 18:50
杰瑞鼠
阅读(137)
推荐(0) 编辑
关于存储的基本知识:
摘要:flash:Flash,是内存(Memory)的一种,但兼有RAM和ROM, 分为NOR Flash 和 NADN Flash两种不同的flash,分别用在不同的场合,不同于SRAM(EEPROM),FLASH的操作是靠一系列指令完成,以扇区sector进行整体操作 NORflash:主要用来存储代
阅读全文
posted @
2017-05-10 13:41
杰瑞鼠
阅读(174)
推荐(0) 编辑
关于外部存储器件对存储数据的管理。
摘要:一引子 :需要大量存储数据时,一般都不会使用单片机内部存储资源(单片机内部的eerom或者flash模拟eeprom只适合存储少量的数据)。一般是通过I2C/SPI接口外部扩展eeprom或者flash,这类器件存储空间都很大能满足大部分的数据存储要求。 二 存储器件内部空间的划分:根据存储IC的容
阅读全文
posted @
2017-05-10 09:33
杰瑞鼠
阅读(193)
推荐(0) 编辑