自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 As39911和RC663的spi时序区别

目前我们使用的非接芯片主要是通过SPI接口来实现通信的,因此本文结合非接芯片As39911和RC663对带有SPI接口的非接芯片操作做了一个总结,可供涉及相关领域的人员参考,同时欢迎与大家的讨论。同时文中也列些测试点,供项目相关人员快速定位问题、解决问题。芯片的具体应用功能不在讨论范围,主控芯片为SM32。对于SPI接口芯片的操作问题主要归结为管脚配置、单/双工、主/从模式、8

2015-01-29 10:53:08 2770

原创 深入理解7816(3)-----关于T=0

卡片和终端之间的数据传输是通过命令响应的方式进行的,卡片只能被动地接收命令,并且给出响应。所有的命令都是以命令头开始,而该命令被完整地执行后(无论结果对错),必须以包含状态字(SW1 SW2)的响应结束。卡片和终端之间如何具体进行数据传输的,就依靠不同的通讯协议来实现,其中主要有T=0、T=1、T=CL。其中T=0和T=1适用于接触式卡片(7816),而T=CL适用于非接触式卡片(14443)。

2015-01-22 21:24:45 2146 1

原创 深入理解7816(2)---关于ATR

智能卡(此处主要指接触式CPU卡)本身始终处于被动的状态,所以终端设备在和智能卡进行数据交互的时候,需要首先给智能卡发指令,智能卡才会对应地给出应答。而智能卡告诉终端的第一句话就是ATR,亦即“复位应答”。想象一下,如果让你为智能卡设计一个通讯协议,该怎么设计?因为ATR是智能卡上电后说的第一句话,所以一定要确保这句话被准确地接收。在设计通讯协议的时候有必要设计一个可以让收发双方进

2015-01-22 21:19:47 2407 1

原创 深入理解7816(1)---- 关于F/D和etu

深入理解7816(1)---- 关于F/D和etu对于刚接触智能卡的工程师来说,在阅读7816-3规范的时候,常常被其中的一些术语迷惑,读起来会觉得有些别扭。尤其是在看到复位应答中的F和D设置以及对应的etu的时候,会觉得有些复杂和难以理解。其实从本质上说7816-3定义了智能卡(这里指的是接触式CPU卡,对于逻辑加密卡以及非接触IC卡不在此列)和读写设备之间的通讯协议,说白了就是

2015-01-22 21:17:52 2229

原创 Pm685驱动调试笔记

Pm685驱动调试笔记1、 底层打印时序 主要的流程是:1) 先读取data的最高位,并通过状态设置DI的电平。2) 设置plck时钟,一个高低电平的切换,先高再低。3) 循环执行8次,将1个字节打印完成,然后再执行123部48次,完成284个点阵的打印。4) 设置platch完成一个高低电平的切换,先低再高。2、 步进电机控制时序有四个步进电机

2014-07-16 14:45:22 683

原创 linux内存管理mmu-内核地址空间

内核地址分配 direct memory region 直接内存映射区从3G开始,最大896M的线性区间。因为该区域的线性地址和物理地址之间存在线性转换关系线性地址=3G+物理地址  vmalloc region 动态内存管理区使用内核函数vmalloc来分配,特点就是线性的连续区域,但对应的物理地址不一定连续。最小120m,Vmalloc对应的线性地址所对

2014-07-15 21:23:21 934

原创 液晶12864屏的12x12汉字显示笔记

今天要好好写写这个项目使用的12864液晶显示12x12汉字的驱动体会!先上几个原理图片,便于后面分析使用.我就是这样分析实现的!先说说图1: 这是KS0108/KS0107芯片组成12864液晶屏的显示方式:点阵纵向取模,字节倒序(低位在前--上,高位在后--下).比如取得的字节是0xAB既二进制表示为:1010,1011,显示时的位排列对应液晶屏从上到下依次是:1101,0

2014-04-23 11:27:56 6710 1

原创 c语言双向链表的学习,链表建立,删除,增加,减少

#include "stdio.h"#include "linklist.h"#include typedef int nodeData;//用户决定类型typedef struct node{nodeData data;//数据struct node* prev;//指向上一个节点struct node* next;//指向下一个节点} N

2014-04-15 22:59:02 604

原创 开始新的项目开发--手持pos机

这个项目是一个裸奔系统,s

2014-04-09 23:09:21 2018 1

原创 STM32 keil printf的使用

请在MDK(keil)工程属性的“Target“-》”Code Generation“中勾选”Use MicroLIB 前提是你有一个完整keil的工程 比如ADC的调试的时候很多时候用到串口 这里教你怎么样使用Printf 函数红色字句为重点!!!!!若使得在程序中使用Printf需做一下几步1,输入输出文件包含#include 2,在程序

2014-02-25 21:36:26 970

原创 关于为何stm32的TIM2定时器时钟是72mhz而不是36mhz

这里我们可以看到我们用的 TIM2的时钟是 APB1 提供的,他的最大值是 36M.有很多人不理解,为什么 TIM2 的时钟不是 36M 而是 72M呢?这里我给大家按照图算一下就明白了。首先 APB1 的时钟最大只能是 36M,所以 APB1 的预分频器的值我们是要设置的,咱们是怎么设置的呢?当然是在 RCC 时钟配置的函数,也就是程序最开始初始化系统时钟到 72M(AHB)的时候,里面有RCC

2014-02-24 22:12:54 8301 1

原创 rror: #20: identifier "RCC_PLLSource_HSE_Div1" is undefined

错误:User\main.c(122): error:  #20: identifier "RCC_PLLSource_HSE_Div1" is undefined意思是RCC_PLLSource_HSE_Div1未定义。我的工程中包含了 stm32f10x_rcc.h  可仍然显示 “RCC_PLLSource_HSE_Div1”未定义打开stm32f10x_rcc.h文

2014-02-24 16:04:12 7842

转载 STM32F10X_XX宏定义的选择

//=====================================================================//TITLE://    STM32F10X_XX宏定义的选择//AUTHOR://    norains//DATE://    Tuesday  12-October-2010//Environment://    KE

2014-02-24 16:00:37 615

原创 ucosii学习笔记0

今天开始写ucosii学习笔记,希望能坚持下去,能够将ucosii移植到stm32F107。大家一起努力吧。

2014-02-10 18:15:38 680

原创 STM32F103 bootloader下载调试过程总结

最近我参与了手机支付项目组的驱动调试,主要涉及到了对于STM32单片机的bootloader下载程序。对于发现和解决的问题在以下进行一个总结。1、对于使用FLASH_LOAD软件来说,当出现软件无法找到MCU的情况时,需要上st官网查询是否有软件更新,因为很可能这块MCU是新版本在以前的软件中没有该芯片的信息。2、对于使用MCU与MCU之间通过ISP下载的方式需要首先确认被下载的MCU的b

2014-02-10 18:11:16 7622

原创 ucos ii学习笔记1——任务中断和调度

UCos ii的中断过程是接收到中断请求,如果此时处理器处于中断允许的情况下,系统中止当前运行的任务,而按照中断向量指向的中断服务子程序,当中断服务子程序结束时,系统将根据当前优先级链表中的情况,返回原先的被中止的任务继续运行,或者到另一个优先级更高的就绪任务上运行。因为UCos ii是可剥夺性内核,所以中断服务结束之前需要有一次任务调度,通过任务调度判断最高优先级准备的任务,目的是提高系统的

2014-02-10 18:03:00 4135

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除