搜档网
当前位置:搜档网 › MC9S12XS128学习中文精华版

MC9S12XS128学习中文精华版

MC9S12XS128学习中文精华版
MC9S12XS128学习中文精华版

IO口模块程序示例

Void PORTB_Init(void){

DDRB=0xff;

//PB口作输出使用,1为输出,0为输入

PORTB=0x00;

//PB口数据寄存器值

}

注意:IO口要注意以下几点:(1)每个IO口的数据寄存器名可能不同(2)AN口只能作输入用(3)PH,PJ(高两位,低两位),PP可用输入中断功能使用(4)IO口作输入与输出时有不同的寄存器对应(5)IO口作复用时不能作IO 口用,相反也不行

IO口可用作:调试接口(接数码管、液晶、拨码开关等等)所以必须掌握

使用拨码开关要注意这样用;

DDRB=0XFF;

//输出

P ORTB=0XFF;

DDRB=0X00;

//输入

AD模块程序示例

Void ATD_Init(void){

ATD0CTL1 = 0x00;

//8位精度,不放电

ATD0CTL2 = 0x42;

//快速清除标志位,禁止外部触发,使能中断

ATD0CTL3=0x8a;//右对齐,每序列4次转换,不用FIFO,进入FreezeMode完成当前转换

ATD0CTL4 = 0x03;

//采样用4个ATD周期,F(ATD)=1MHz[bus clock为8MHz]

ATD0CTL5 = 0x29;

//SCAN模式,单通道,通道9

ATD0DIEN = 0x00;

//禁止数据输入

}

Void main(void){

ATD_Init();

………………………………………

}

#pragma CODE_SEG NON_BANKED

void interrupt 22 Int_AD0(void)

{ DisableInterrupts;

AD_wData = ATD0DR0L; //读ATD转换的寄存器值(低八位)

ATD0STAT0_SCF=0;

//(当AFFC为1时,写0清零;为1 时写1清零)

EnableInterrupts;

}

注意:ATD模块要着重注意:(1)标志位清零(比较复杂)(2)多通道转换后的储存顺序(3)精度的选择和转换速度(4)

单个通道与多通道转换的区别

定时器模块程序示例

Void Timer_Init(void){

TSCR1=0X90;

//使能定时器并设置为自动清除标志TFLG1

TSCR2=0X03;

//设置分频系数为8,及23

TIE=0X01;

//定时器通道0中断使能

TIOS_IOS0=1;

//PT0口为输出比较

TC0=TCNT+1677;

//设定初值//定的时间就是从0加到1677要的时间EnableInterrupts;

Void main(void){

Timer_Init();

…………………..

}

#pragma

CODE_SEG

NON_BANKED

void interrupt 8 Timer(void) { DisableInterrupts;

TC0=TCNT+1677;

//设定比较器下次中断时间

TSCR1=0x00;

//关定时器(一般情况定没必要用这个)

EnableInterrupts;

}

注意:定时器模块要关重注意以下几点:(1)初值的设定,每次中断都要置初值(2)标志位的清零方式(3)PT口作为输入捕捉时的设置区别

脉冲累加模块示例

Void PT7_Init(void){

PACTL=0X40;

//脉冲累加系统使能,下降没触发,使用预分频因子定义的时钟

PACNT=0X0000;

//设定脉冲累加计数寄存器初值

}

注意:脉冲累加模块注意以下几点:(1)PACTL中的各位配合使用表,可以在自备次料上查

PWM脉宽调制模块示例Void PWM_Init(void){

PWME=0X02;

//使能PWM1口,及PP1口

PWMCTL=0X10;

//级连PP0和PP1

PWMPRCLK=0X07;

//预分频A系数为128

PWMCLK_PCLK1=0;

//级连通道01选择时钟A

PWMPOL=0X02;

//级连通道01极性们为先高电平输出

PWMCAE=0X00;

//级连通道01为左边对齐输出

PWMDTY01=1000;

//占空比寄存器值

PWMPER01=1500;

//周期寄存器值

}

注意:PWM模块要注意以下几点:(1)PWM级联时寄存器名称区别(2)预分频与分频的联合应用

串行口SCI程序示例

Void SCI_Init(void){

SCI0BDL=(byte)(8000000/9600/16);//设置总线为8M时SCI波特率为9600Hz

SCI0CR1=0x00;

//数据格式为8位(没有奇偶校验位)

SCI0CR2=0x2c;

//接收中断使能,发送使能,接收器使能

}

Void main(void){

SCI_Init();

………………………

}

#pragma CODE_SEG NON_BANKED interrupt 20 void SCI_RX_IRS(void){

byte RxData,RX;

DisableInterrupts;

RX=SCI0SR1;

//读状态寄存器,为清零作准备

RxData=(byte)SCI0DRL; //读接收寄存器的值EnableInterrupts;

}

注意:串行口SCI要注意以下几点:(1)波特率的设置注意总线频率是否有变(2)SCI数据格式(2)接收中断标志清零是先读状态寄存器再读数据寄存器(4)发送时不能用中断,只能轮询标志位(易错)!!!

琐相环模块程序示例

Void SetBusCLK_32M(void){

CLKSEL=0x00;

//不使用锁相环

PLLCTL_PLLON=1;

//锁相环电路允许

SYNR=0xc0|0x03;

//SYNDIV=3

REFDV=0xc0|0x01;

//REFDIV=1

POSTDIV=0x00;

//分频系数为20=1

_asm(nop);

//等待锁相环稳定

_asm(nop);

_asm(nop);

_asm(nop);

_asm(nop);

_asm(nop);

_asm(nop);

while(!(CRGFLG_LOCK==1));

CLKSEL_PLLSEL=1;

//使用锁相环(只能写最后)

}

注意:锁相环要注意以下几点(1)锁相环使用后改变了总线频率,所以相它与总线频率相关的各模块寄存器也要相应改变,以免出现低级错误(易错)!!(2)锁相环设置顺序(3)超率不能超出范围(4)公式中的FOSC为晶振频率而非时钟频率,别搞错了!

SPI通信模块程序示例

void SPI_Init(void){

//SPI初始化

SPI0CR1=0xde;

//SPI中断使能,SPI系统使能,SPI为主机模式,SPI时钟极性为低时钟有效,SPI传送期间从机SS脚可保持低电平

SPI0CR2=0x12;样

//模式错误使能,等待模式下停止SPI时钟

SPI0BR=0x07;

//分频系数为256

SPI0SR_SPIF=0;

//接收中断标志初始化为0

}

void Send_Data(unsigned char data){

//SPI发送数据

while(!SPI0SR_SPTEF);

//等待发送寄存器为空

SPI0DRL=data;

while(!(SPI0SR_SPIF));

//等待接收标志置1,接收到的是返回值

aa=SPI0DRL;

}

unsigned char Read_Data(){

//SPI读数据

unsigned char data;

while(!SPI0SR_SPTEF);

//等待发送寄存器空(因为SPI中收、发都用一个寄存器)

SPI0DRL=0xff;

while(!SPI0SR_SPIF);

//等待接收标志置位

data=SPI0DRL;

//读出数据

return data;

//返回数据

}

注意:SPI要注意以下几点:(1)HCS12中SPI数据寄存器虽然有十六位,但有用的只有八位

(用到的)PC9S12XS128MAL中断向量表

#define VectorNumber_Vporth 25

PORTH中断号

#define VectorNumber_Vportj 24

PORTJ中断号

#define VectorNumber_Vatd0 22

A/D转换中断号

#define VectorNumber_Vsci1 21

串行口1中断号

#define VectorNumber_Vsci0 20

串行口0中断号

#define VectorNumber_Vtimch0 8

定时器中断

MC9S12XS128 AD转换详解

A/D转换模块详解 1、A/D转换原理 A/D转换的过程是模拟信号依次通过取样、保持和量化、编码几个过程后转换为数字格式。 a)取样与保持 一般取样与保持过程是同时完成的,取样-保持电路的原理图如图16所示,由输 入放大器A 1、输出放大器A 2 、保持电容C H 和电子开关S组成,要求 A V1 * A V2 = 1。原 理是:当开关S闭合时,电路处于取样阶段,电容器充电,由于 A V1 * A V2 = 1,所以 输出等于输入;当开关S断开时,由于A 2输入阻抗较大而且开关理想,可认为C H 没有 放电回路,输出电压保持不变。 图16 取样-保持电路 取样-保持以均匀间隔对模拟信号进行抽样,并且在每个抽样运算后在足够的时间内保持抽样值恒定,以保证输出值可以被A/D 转换器精确转换。 b)量化与编码 量化的方法,一般有舍尾取整法和四舍五入法,过程是先取顶量化单位Δ,量化单位取值越小,量化误差的绝对值就越小,具体过程在这里就不做介绍了。将量化后的结果用二进制码表示叫做编码。 2、A/D转换器的技术指标 a)分辨率 分辨率说明A/D转换器对输入信号的分辨能力,理论上,n位A/D转换器能区分的输入电压的最小值为满量程的1/2n 。也就是说,在参考电压一定时,输出位数越多,量化单位就越小,分辨率就越高。S12的ATD模块中,若输出设置为8位的话,那么转换器能区分的输入信号最小电压为19.53mV。 b)转换时间

A/D转换器按其工作原理可以分为并联比较型(转换速度快ns级)、逐次逼近型(转换速度适中us级)、双积分型(速度慢抗干扰能力强)。 不同类型的转化的A/D转换器转换时间不尽相同,S12的ATD模块中,8位数字 量转换时间仅有6us,10位数字量转换时间仅有7us。 S12内置了2组10位/8位的A/D模块:ATD0和ATD1,共有16个模拟量输入通道,属于逐次逼近型A/D转换器(这个转换过程与用天平称物的原理相似)。 1、功能结构图 图17 A/D 模块功能结构图 图17所示的是A/D 模块的功能结构,这个功能模块被虚线划分成为图示所示的虚线所隔离的三个部分:IP总线接口、转换模式控制/寄存器列表,自定义模拟量。 IP 总线接口负责该模块与总线的连接,实现A/D 模块和通用I/O 的目的,还起 到分频的作用; 转换模式控制寄存器列表中有控制该模块的所有的寄存器,执行左右对齐运行和连 续扫描。 自定义模拟量负责实现模拟量到数字量的转换。包括了执行一次简单转换所需的模 拟量和数字量。 2、HCS12中A/D转化模块特点 8/10 位精度;7 us, 10-位单次转换时间.;采样缓冲放大器;可编程采样时间;左/ 右对齐, 有符号/无符号结果数据;外部触发控制;转换完成中断;模拟输入8 通道复用;模拟/数字输入引脚复用;1到8转换序列长度;连续转换模式;多通道扫描方式。 ATD 模块有模拟量前端、模拟量转换、控制部分及结果存储等四部分组成。其中模拟前端包括多路转换开关、采样缓冲器、放大器等,结果存储部分主要有8个16 位的存储器和反映工作状态的若干标志位。 A/D转换应用实例 要让ATD 开始转换工作,必须经过以下三个步骤: 1.将ADPU 置1,使ATD 启动;

jquery.cookie使用方法(中文详细版)

jquery.cookie使用方法 一个轻量级的cookie插件,可以读取、写入、删除cookie。 jquery.cookie.js的配置 首先包含jQuery的库文件,在后面包含jquery.cookie.js的库文件。 使用方法 新添加一个会话cookie: 创建一个cookie并设置有效时间为7天: 创建一个cookie并设置cookie的有效路径: 读取cookie: 删除cookie,通过传递null作为cookie的值即可: 相关参数的解释 定义cookie的有效时间,值可以是一个数字(从创建cookie时算起,以天为单位)或一个Date对象。如果省略,那么创建的cookie是会话cookie,将在用户退出浏览器时被删除。 默认情况:只有设置cookie的网页才能读取该cookie。 定义cookie的有效路径。默认情况下,该参数的值为创建cookie的网页所在路径(标准浏览器的行为)。如果你想在整个网站中访问这个cookie需要这样设置有效路径:path: '/'。如果你想删除一个定义了有效路径的cookie,你需要在调用函数时包含这个路径:$.cookie('the_cookie', null, { path: '/' });。

默认值:创建cookie的网页所拥有的域名。 默认值:false。如果为true,cookie的传输需要使用安全协议(HTTPS)。 默认值:false。 默认情况下,读取和写入cookie的时候自动进行编码和解码(使用encodeURIComponent编码,decodeURIComponent解码)。要关闭这个功能设置raw: true即可。

jQuery.nicescroll 中文API

jQuery.NiceScroll 一个模仿ios/mobile滚动条风格美化浏览器滚动条的jQuery插件。NiceScroll初始化声明文档 1、简单模式,使用默认样式。 $(document).ready(function() { $("html").niceScroll(); }); 2、作为实例和对象返回 var nice = false; $(document).ready(function() { nice = $("html").niceScroll(); }); 3、设置光标颜色 $(document).ready(function() { $("#thisdiv").niceScroll({cursorcolor:"#00F"}); }); 4、Div包裹,由两个div组成,第一个是包裹div,第二的才是滚动div $(document).ready(function() { $("#viewportdiv").niceScroll("#wrapperdiv",{cursorcolor:"#00F"}); }); 5、获取nicescroll对象

var nice = $("#mydiv").getNiceScroll(); 6、隐藏滚动条 $("#mydiv").getNiceScroll().hide(); 7、检查滚动条大小变化(当窗口大小变化时滚动条跟着变化) $("#mydiv").getNiceScroll().resize(); 8、滚动到指定位置 $("#mydiv").getNiceScroll(0).doScrollLeft(x, duration); // 沿X轴滚动 $("#mydiv").getNiceScroll(0).doScrollTop(y, duration); // 沿Y轴滚动 参数一:滚动距离,正数X轴向右滚动、Y轴向下滚动,负数反之。 参数二:滚动持续时间 9、配置参数 $("#thisdiv").niceScroll({ cursorcolor:"#424242", // 设置光标颜色 cursoropacitymin:0, // 设置非活动状态光标透明度,取值范围0-1,默认为0。 cursoropacitymax:1, //设置活动状态光标透明度,取值范围0-1,默认为1。cursorwidth:"5px", //设置光标宽度 cursorborder:"1px solid #fff",// 设置光标边框 cursorborderradius:"5px", //设置光标圆角,默认5px zindex:"auto" | , // 设置滚动条的层数值 scrollspeed:60, //滚动速度,单位秒 mousescrollstep:40, //每次滚动距离 touchbehavior:false, //设置触摸滑动。默认值false hwacceleration:true, //使用硬件加速滚动支持 boxzoom:false, // 设置是否可以放大容器,默认值false dblclickzoom:true, //双击放大/缩小容器(当boxzoom为true有效)。默认值为true gesturezoom:true, // 是否支持手指缩进或放大容器(当boxzoom为true并且在touch设备上)

jQuery常用方法中文解析

jQuery常用方法中文解析 jQuery设计思想 【目录】 一、选择网页元素 二、改变结果集 三、链式操作 四、元素的操作:取值和赋值 五、元素的操作:移动 六、元素的操作:复制、删除和创建 七、工具方法 八、事件操作 九、特殊效果 一、选择网页元素 jQuery的基本设计和主要用法,就是"选择某个网页元素,然后对其进行某种操作"。这是它区别于其他函数库的根本特点。使用jQuery的第一步,往往就是将一个选择表达式,放进构造函数jQuery()(简写为$),然后得到被选中的元素。选择表达式可以是CSS选择器: $(document) //选择整个文档对象 $('#myId') //选择ID为myId的网页元素 $('div.myClass') // 选择class为myClass的div元素 $('input[name=first]') // 选择name属性等于first的input元素 也可以是jQuery特有的表达式: $('a:first') //选择网页中第一个a元素 $('tr:odd') //选择表格的奇数行 $('#myForm :input') // 选择表单中的input元素 $('div:visible') //选择可见的div元素 $('div:gt(2)') // 选择所有的div元素,除了前三个 $('div:animated') // 选择当前处于动画状态的div元素

二、改变结果集 如果选中多个元素,jQuery提供过滤器,可以缩小结果集: $('div').has('p'); // 选择包含p元素的div元素 $('div').not('.myClass'); //选择class不等于myClass的div元素 $('div').filter('.myClass'); //选择class等于myClass的div元素 $('div').first(); //选择第1个div元素 $('div').eq(5); //选择第6个div元素 有时候,我们需要从结果集出发,移动到附近的相关元素,jQuery也提供了在DOM树上的移动方法: $('div').next('p'); //选择div元素后面的第一个p元素 $('div').parent(); //选择div元素的父元素 $('div').closest('form'); //选择离div最近的那个form父元素 $('div').children(); //选择div的所有子元素 $('div').siblings(); //选择div的同级元素 三、链式操作 选中网页元素以后,就可以对它进行某种操作。jQuery允许将所有操作连接在一起,以链条的形式写出来,比如: $('div').find('h3').eq(2).html('Hello'); 分解开来,就是下面这样: $('div') //找到div元素 .find('h3') //选择其中的h3元素 .eq(2) //选择第3个h3元素 .html('Hello'); //将它的内容改为Hello 这是jQuery最令人称道、最方便的特点。它的原理在于每一步的jQuery操作,返回的都是一个jQuery对象,所以不同操作可以连在一起。jQuery还提供了.end()方法,使得结果集可以后退一步: $('div').find('h3').eq(2).html('Hello').end() //退回到选中所有的h3元素的那一步.eq(0) //选中第一个h3元素.html('World'); //将它的内容改为World

飞思卡尔MC9S12XS128技术手册翻译AD

飞思卡尔MC9S12XS128技术手册(AD转换部分) 英文资料:飞思卡尔MC9S12XS256RMV1官方技术手册 1.1 XS12系列单片机的特点 XS12系列单片机特点如下: ·16位S12CPU —向上支持S12模糊指令集并去除了其中的MEM, WAV, WAVR, REV, REVW 五条指令; —模块映射地址机制(MMC); —背景调试模块(BDM); ·CRG时钟和复位发生器 —COP看门狗; —实时中断; ·标准定时器模块 —8个16位输入捕捉或输出比较通道;; —16位计数器,8位精密与分频功能; —1个16位脉冲累加器; ·周期中断定时器PIT —4具有独立溢出定时的定时器; —溢出定时可选范围在1到2^24总线时钟; —溢出中断和外部触发器; ·多达8个的8位或4个16位PWM通道 —每个通道的周期和占空比有程序决定; —输出方式可以选择左对齐或中心对其; —可编程时钟选择逻辑,且可选频率范围很宽; ·SPI通信模块 —可选择8位或16位数据宽度;

—全双工或半双工通信方式; —收发双向缓冲; —主机或从机模式; —可选择最高有效为先输出或者最低有效位先输出; ·两个SCI串行通信接口 —全双工或半双工模式 ·输入输出端口 —多达91个通用I/O引脚,根据封装方式,有些引脚未被引出; —两个单输入引脚; ·封装形式 —112引脚薄型四边引线扁平封装(LQFP); —80引脚扁平封装(QFP); —64引脚LQFP封装; ·工作条件 —全功率模式下单电源供电范围3.15V到5V; —CPU总线频率最大为40MHz —工作温度范围–40 C到125 C 第十章模拟—数字转换 10.1 介绍 ADC12B16C是一个16通道,12位,复用方式输入逐次逼近模拟—数字转换器。 ATD的精度由电器规格决定。 10.1.1 特点 ·可设置8位、10位、12位精度 ·在停止模式下,ATD转换使用内部时钟 ·转换序列结束后自动进入低耗电模式 ·可编程采样时间 ·转化结果可选择左对齐或右对齐

jQuery Mobile中文手册

jQuery Mobile开发入门手册——入门篇 作者:张勇辉更新日期2010-11-03 Blog:https://www.sodocs.net/doc/d5159998.html,

目录 jQuery Mobile开发入门手册——入门篇 (1) 概述 (3) 框架特性 (3) 版本约定 (3) 初始配置 (4) 页面声明 (4) 技术理论 (4) WebKit 和HTML5 (4) 移动Web 应用程序的考虑 (5) 一般站点的呈现 (5) 组件 (7) 页面 (7) 模态对话框 (8) 工具条 (9) 标题容器 (9) 页脚容器 (10) 导航 (11) 按钮 (11) 表单应用 (13) 列表应用 (14)

概述 此文档是基于jQuery Mobile框架的移动设备Web应用开发知识而编制,目的是为了方便开发人员快速的掌握此框架的开发应用,其中包含了框架的基础应用知识和在团队协作开发中的常规约定。 框架特性 JQuery Mobile以“Write Less, Do More”作为目标,为所有的主流移动操作系统平台提供了高度统一的UI框架:jQuery的移动框架可以让你为所有流行的移动平台设计一个高度定制和品牌化的Web应用程序,而不必为每个移动设备编写独特的应用程序或操作系统。 jQuery Mobile目前支持的移动平台有苹果公司的iOS(iPhone,ipad,iPod Touch),Android,Black Berry OS6.0,惠普WebOS,Mozilla的Fennec和Opera Mobile。今后,将增加包括Windows Mobile,Symbian和MeeGo在内的更多移动平台。 根据jQuery Mobile项目网站,目前jQuery Mobile的特性包括: ?jQuery核心——与jQuery桌面版一致的jQuery核心和语法,以及最小的学习曲线。?兼容所有主流的移动平台——iOS、Android、BlackBerry,Palm WebOS、Symbian、Windows Mobile、BaDa、MeeGo以及所有支持HTML的移动平台。 ?轻量级alpha版本的jQuery Mobile 其JavaScript 大小仅为12KB ,CSS 文件也只有6KB大小。 ?标记驱动的配置jQuery Mobile采用完全的标记驱动而不需要JavaScript的配置。 ?渐进增强jQuery Mobile采用完全的渐进增强原则:通过一个全功能的HTML网页,和额外的JavaScript功能层,提供顶级的在线体验。这意味着即使移动浏览器不支持JavaScript,基于jQuery Mobile的移动应用程序仍能正常的使用。 ?自动初始化通过使用mobilize()函数自动初始化页面上的所有jQuery部件。 ?无障碍包括WAI-ARIA在内的无障碍功能以确保页面能在类似于VoiceOver等语音辅助程序和其他辅助技术下正常使用。 ?简单的API 为用户提供鼠标、触摸和光标焦点简单的输入法支持。 ?强大的主题化框架jQuery Mobile提供强大的主题化框架和UI接口。 版本约定 为了避免由于版本不统一等引发的问题,在此次撰写中对框架的版本进行了如下约定:jQuery核心:V 1.50 Mobile核心:V 1.0 ALPHA 3

jqgrid方法-中文

jqgrid学习(7)方法 jqGrid的方法,从3.6开始已经完全兼容jQuery UI库。 用法: Java代码 1. grid_id:表格的id;jqGridMethod:用到表格上的方法;parameter1,…parameterN :参数列表 此方法并不是返回请求的数据值而是返回一个jqGrid对象。 Java代码 1. 如果使用新的API: Java代码 1. grid_id:表格id;jqGrid:表格实例;method:表格支持的方法名; parameter1,...parameterN :参数列表 具体实例:

Java代码 1. jqGrid配置使用新的api Java代码 1. 2. 3. 4. 5.My First Grid 6. 7. 8. 9. 10. 11. 12. 15. 16. 17. 18. 19.... 20. 21. 要注意 Java代码

MC9S12XS128终极例程

SCI程序 串行通信时MCU与外部设备之间进行通信的一种简单而有效的硬件方法。 无论用查询方式还是中断方式进行串行通信编程,在程序初始化时均必须对SCI进行初始化。初始化主要包括波特率设置、通信格式的设置、发送接收数据方式的设置等。 对SCI进行初始化,需要设置如下几部分: (1)定义波特率 一般选内部总线时钟为串行通信的时钟源。通过设置SCI波特率寄存器SCI0BD的波特率选择位SBR[12:0],来选择合适的分频系数。 (2)写控制字到SCI控制寄存器1(SCI0CR1) 设置是否允许SCI、数据长度、输出格式、选择唤醒方法、是否校验等。 (3)写控制字到SCI控制寄存器2(SCI0CR2) 设置是否允许发送与接收、是中断接收还是查询接收等。 串行通信程序如下: /** write in “Init.h” **/ #include /* common defines and macros */ #include "derivative.h" /* derivative-specific definitions */ //void InitBusClk(void); //可以不使用锁相环 void InitSci(void); /** write in “Init.c” **/ //初始化程序 #include "Init.h" /* //------------初始化Bus Clock------------// void InitBusClk(void) { DisableInterrupts; CLKSEL=0X00; //PLLSEL 1 : Bus Clock=PLLCLK/2 // 0 : Bus Clock=OSCCLK/2 PLLCTL_PLLON=1; //开启PLL SYNR=0; //OSCCLK=16MHz REFDV=0X0F; //PLLCLK=2*OSCCLK*[(1+SYNR)/(1+REFDV]=32/16=2MHz while(!(CRGFLG_LOCK==1)); //直到LOCK=1,when PLL is ready,退出循环 CLKSEL_PLLSEL=1; //PLLSEL 1 : Bus Clock=PLLCLK/2=2MHz/2=1MHz // 0 : Bus Clock=OSCCLK/2=16M/2=8MHz } */

jQuery1.7.1_API中文手册

jQuery1.7.1API手册 本文基于jQuery1.7.1版本,是对官方API的整理和总结,完整的官方API见https://www.sodocs.net/doc/d5159998.html,/browser/ 0、总述 jQuery框架提供了很多方法,但大致上可以分为3大类:获取jQuery对象的方法、在jQuery 对象间跳转的方法,以及获取jQuery对象后调用的方法 其中第一步是怎样获取jQuery对象。大致来说,是通过最核心的$()方法,将页面上的元素(或者在页面上不存在的html片段)包装成jQuery对象。 $()方法里面支持的语法又包括3大类,分别是表达式(包括类表达式.,id表达式#,元素表达式等)、符号(包括后代符号space,next符号+等)、过滤器(包括:过滤器和[]过滤器)。 通过以上3种的组合,“查询”得到想要操作的元素或者元素集合,作为$()的参数,得到jQuery 对象(或者jQuery对象的集合) 第二步是在jQuery对象间的跳转。也就是说,已经得到了一个jQuery对象,但是并不是想要的,那么可以通过一系列的跳转方法,比如parent()、next()、children()、find()等,或者过滤筛选的方法,比如eq()、filter()、not()等,来得到最终想要操作的jQuery对象。 用跳转和过滤方式得到的jQuery结果,往往通过比较复杂的表达式组合,可以达到同样的目的。 比如说$("div").eq(3),也可以用$("div:eq(3)")达到同样的目的。 又比如说$("div").find("span"),可以用$("div span")取到同样的元素。 方法是很灵活的,要根据具体的情况来选择。一般来说,HTML页面写得越规范,使用jQuery 就越简单 还有一种情况,在得到了jQuery()对象之后,想要判断其是否满足条件,那么可以调用is()、hasClass()等方法,返回一个boolean值,进行后续的判断。这类方法也可以归到这类。 第三步是在获取准确的jQuery对象之后,调用其上的各种方法,来进行操作。这一步反而是比较简单的了。 后面就是对jQuery框架各种方法的简要介绍,更详细的内容,还是以官方API为准 1、$(...)

Jquery优势介绍

Jquery优势介绍 1、轻量级 JQuery非常轻巧,采用Dean Edwards编写的Packer压缩后,大小不到30KB,如果使用Min版并且在服务器端启用Gzip压缩后,大小只有18KB。 2、强大的选择器 JQuery允许开发者使用从CSS1到CSS3几乎所有的选择器,以及JQuery独创的高级而且复杂的选择器,另外还可以加入插件使其支持XPath选择器,甚至开发者可以编写属于自己的选择器。由于JQuery支持选择器这一特性,因此有一定CSS经验的开发人员可以很容易的切入到JQuery的学习中来。 3、出色的DOM操作的封装 JQuery封装了大量常用的DOM操作,使开发者在编写DOM操作相关程序的时候能够得心应手。JQuery轻松地完成各种原本非常复杂的操作,让JavaScript新手也能写出出色的程序。 4、可靠的事件处理机制 JQuery的事件处理机制吸收了JavaScript专家Dean Edwards编写的事件处理函数的精华,是的JQuery在处理事件绑定的时候相当可靠。在预留退路、循序渐进以及非入侵式编程思想方面,JQuery也做得非常不错。 5、完善的Ajax JQuery将所有的Ajax操作封装到一个函数$.ajax()里,使得开发者处理Ajax的时候能够专心处理业务逻辑而无需关心复杂的浏览器兼容性和XMLHttpRequest对象的创建和使用的问题。 6、不污染顶级变量 JQuery只建立一个名为JQuery的对象,其所有的函数方法都在这个对象之下。其别名$也可以随时交流控制权,绝对不会污染其他的对象。该特性是JQuery可以与其他JavaScript库共存,在项目中放心地引用而不需要考虑到后期的冲突。

MC9S12XS128单片机简介

MC9S12XS128 单片机简介 1、HCS12X 系列单片机简介 Freescale 公司的16 位单片机主要分为HC12 、HCS12、HCS12X 三个系列。HC12核心是16 位高速CPU12 核,总线速度8MHZ;HCS12 系列单片机以速度更快的CPU12 内核为核心,简称S12 系列,典型的S12 总线速度可以达到25MHZ。HCS12X 系列单片机是Freescale 公司于2005 年推出的HCS12 系列增强型产品,基于S12 CPU 内核,可以达到25MHz 的HCS12 的2-5 倍性能。总线频率最高可达40 MHz。S12X 系列单片机目前又有几个子系列:MC9S12XA 系列、MC9S12XB 系列、MC9S12XD 系列、MC9S12XE 系列、MC9S12XF系列、MC9S12XH 系列和MC9S12XS 系列。MC9S12XS128 就是S12X 系列中的一个成员。 2、MC9S12XS128 性能概述 MC9S12XS128 是16 位单片机,由16 位中央处理单元(CPU12X)、128KB 程序 Flash(P-lash)、8KB RAM、8KB 数据Flash(D-lash)组成片内存储器。主要功能模块包 括: 内部存储器 内部PLL 锁相环模块 2 个异步串口通讯SCI 1 个串行外设接口SPI MSCAN 模块 1 个8 通道输入/输出比较定时器模块TIM 周期中断定时器模块PIT 16 通道A/D 转换模块ADC 1 个8 通道脉冲宽度调制模块PWM 输入/输出数字I/O 口 3、输入/输出数字I/O 口 MC9S12XS128 有3 种封装,分别为64 引脚、80 引脚、112 引脚封装。其全名分别为MC9S12XS128MAE、MC9S12XS128MAA、MC9S12XS128MAL。MC9S12XS 系列具有丰富的输入/输出端口资源,同时集成了多种功能模块,端口包括PORTA、PORTB、PORTE、PORTK、PORTT、PORTS、PORTM、PORTP、PORTH、PORTJ 和PORTAD 共11 个端口。端口引脚大多为复用口,往往具有多重功能,所有端口都具有通用I/O 口功能。 PORTA、PORTB、PORTK 为通用I/O 口 PORTE 中的IRO 和XIRQ 引脚可作为外部中断输入 PORTT 集成了TIM 模块功能 PORTS 集成了SCI 和SPI 模块功能 PORTM 集成了CAN 总线模块 PORTP 集成了PWM 模块功能 PORTH、PORTJ 可作为外部中断输入口 PORTAD 集成了ATD 模块功能 在MC9S12XS128 单片机中有些特殊功能可定义为多个引脚,如PWM、SCI1 模块。对于这些具有相同功能的引脚定义,由端口T 路径寄存器PTTRR 和模块路径寄存器MODRR 确定。MC9S12XS128 的 3 种封装的引脚数目不一样,所具有的通用端口的引脚和功能有

web前端 - Jquery

WEB前端-JQuery 2009.4 Louis

目录 第一章JQuery概述 (3) 第二章JQuery选择器 (10) 第三章JQuery中的DOM操作 (15) 第四章JQuery中的事件和动画 (19) 第五章JQuery对表单、表格的操作 (21) 第六章JQuery与Ajax的应用.............................. 错误!未定义书签。第七章插件的使用和写法................................... 错误!未定义书签。第八章实例 .. (22)

第一章JQuery概述 1.1 JQuery概述 随着Web2.0的兴起,JavaScript越来越受到重视。 但Javascript存在的三个弊端:复杂的文档对象模型(DOM),不一致的浏览器实现,缺乏便捷的开发、调试工具 因此一系列JavaScript库也蓬勃发展起来。从早期的Prototype、Dojo到2006年的jQuery,再到2007年Ext JS。可以发现,互联网正在掀起一场JavaScript风暴。在这场风暴中,jQuery以其独特优雅的姿态,始终处于这场风暴的中心,受到越来越多的人的追捧 1.2 JS框架对比 1.2.1 Prototype Prototype算是最早成型的JavaScript库之一,它对JavaScript的内置对象(如String对象、Array对象等)做了大量的扩展。现在还有很多项目使用它,但这很大程度上是由于以前项目用了,现在不得不继续沿用。它可以看做是把很多好的、有用的JavaScript的方法组合在一起而形成的JavaScript库,你甚至可以在你需要的时候随时将其中的几段代码抽出来放进自己的脚本里。但也正是由于它成型年代早,从整体上对于面向对象的编程思想把握并不是很到位,导致了结构的松散。不过现在它也在慢慢改进。 1.2.2 Dojo Dojo强大之处在于它提供了很多其它JavaScript库所没有提供的功能。比如离线存储的API、生成图标的组件、基于SVG/VML的矢量图形库和Comet支持等等。它是一款非常适合企业级应用的JavaScript库,

jquery.form.js中文API

jquery.form.js中文API 关键字: jquery.form.js 英文原文:https://www.sodocs.net/doc/d5159998.html,/jquery/form/#api 表单插件API提供了几个方法,让你轻松管理表单数据和进行表单提交。 ajaxForm 增加所有需要的事件监听器,为AJAX提交表单做好准备。ajaxForm不能提交表单。在document的ready函数中,使用ajaxForm来为AJAX提交表单进行准备。ajaxForm接受0个或1个参数。这个单个的参数既可以是一个回调函数,也可以是一个Options对象。 可链接(Chainable):可以。 实例: Java代码 1$('#myFormId').ajaxForm(); ajaxSubmit 马上由AJAX来提交表单。大多数情况下,都是调用ajaxSubmit来对用户提交表单进行响应。ajaxSubmit接受0个或1个参数。这个单个的参数既可以是一个回调函数,也可以是一个Options对象。 可链接(Chainable):可以。 实例: Java代码 2// 绑定表单提交事件处理器 3$('#myFormId').submit(function() { 4 // 提交表单 5 $(this).ajaxSubmit(); 6 // 为了防止普通浏览器进行表单提交和产生页面导航(防止页面刷新?)返回false 7return false; 8});

formSerialize 将表单串行化(或序列化)成一个查询字符串。这个方法将返回以下格式的字符串:name1=value1&name2=value2。 可链接(Chainable):不能,这个方法返回一个字符串。 实例: Java代码 9var queryString = $('#myFormId').formSerialize(); 10 11// 现在可以使用$.get、$.post、$.ajax等来提交数据 12$.post('myscript.php', queryString); fieldSerialize 将表单的字段元素串行化(或序列化)成一个查询字符串。当只有部分表单字段需要进行串行化(或序列化)时,这个就方便了。这个方法将返回以下格式的字符串:name1=value1&name2=value2。 可链接(Chainable):不能,这个方法返回一个字符串。 实例: Java代码 13var queryString = $('#myFormId .specialFields').fieldSerialize(); fieldV alue 返回匹配插入数组中的表单元素值。从0.91版起,该方法将总是以数组的形式返回数据。如果元素值被判定可能无效,则数组为空,否则它将包含一个或多于一个的元素值。 可链接(Chainable):不能,该方法返回数组。 实例: Java代码

MC9S12XS128 串口操作例程

MC9S12XS128 串口操作例程 Code Warrior 4.7 Target : MC9S12XS128 Crystal: 16.000Mhz busclock: 8.000MHz pllclock:16.000MHz 本程序主要包括以下功能: 1.设置锁相环和总线频率; 2.IO口使用; 3.共四路ATD使用及显示方法。 LED计数,根据灯亮可以读取系统循环了多少次 ************************************************************** ***************************/ #include /* common defines and macros */ #include /* derivative information */ #include #include #include #pragma LINK_INFO DERIVATIVE "mc9s12xs128" #pragma CODE_SEG DEFAULT #define CR_as_CRLF TRUE // if true , you can use "\n" to act as CR/LF, // if false, you have to use "\n\r",but can get a higher speed static int do_padding; static int left_flag; static int len; static int num1; static int num2; static char pad_character; unsigned char uart_getkey(void) { while(!(SCI0SR1&0x80)) ; //keep waiting when not empty return SCI0DRL; } /* void uart_init(void) { SCI0CR2=0x0c;

JQuery DataGrid 中文文档

JQuery DataGrid的例子在附件里面,下面给出Jquery DataGrid 的中文文档。Name Type Description Default null title string The datagrid panel title text. DataGrid 的面板标题文字。 iconCls string A CSS class that will provide a null background image to be used as the header icon. 一个CSS类,将提供一个背 景图片作为标题图标。 true border boolean True to show datagrid panel border. 真 到DataGrid中显示面板的边界。 auto width number The width of datagrid width. 宽度的 DataGrid的宽度。 auto height number The height of datagrid height. 该数据 网格的高度的高度。 columns array The datagrid columns config object, see null column properties for more details. DataGrid的列的配置对象,看到更多的细 节列属性。 null frozenColumns array Same as the columns property, but the these columns will be frozen on left. Columns属性相同,但将这些列左冻结。 striped boolean True to stripe the rows. True 条纹行。false post method string The method type to request remote data. 该方法要求远程数据类型。 nowrap boolean True to display data in one line. 真 true 正显示在同一行数据。 idField string Indicate which field is an identity null field. 说明哪些字段是一个标识字段。

MC9S12XS128学习中文精华终极版版

IO口模块程序示例 Void PORTB_Init(void){ DDRB=0xff; //PB口作输出使用,1为输出,0为输入 PORTB=0x00; //PB口数据寄存器值 } 注意:IO口要注意以下几点:(1)每个IO口的数据寄存器名可能不同(2)AN口只能作输入用(3)PH,PJ(高两位,低两位),PP可用输入中断功能使用(4)IO口作输入与输出时有不同的寄存器对应(5)IO口作复用时不能作IO 口用,相反也不行 IO口可用作:调试接口(接数码管、液晶、拨码开关等等)所以必须掌握 使用拨码开关要注意这样用; DDRB=0XFF; //输出 P ORTB=0XFF; DDRB=0X00; //输入 AD模块程序示例 Void ATD_Init(void){

ATD0CTL1 = 0x00; //8位精度,不放电 ATD0CTL2 = 0x42; //快速清除标志位,禁止外部触发,使能中断 ATD0CTL3=0x8a;//右对齐,每序列4次转换,不用FIFO,进入FreezeMode完成当前转换 ATD0CTL4 = 0x03; //采样用4个ATD周期,F(ATD)=1MHz[bus clock为8MHz] ATD0CTL5 = 0x29; //SCAN模式,单通道,通道9 ATD0DIEN = 0x00; //禁止数据输入 } Void main(void){ ATD_Init(); ……………………………………… } #pragma CODE_SEG NON_BANKED

void interrupt 22 Int_AD0(void) { DisableInterrupts; AD_wData = ATD0DR0L; //读ATD转换的寄存器值(低八位) ATD0STAT0_SCF=0; //(当AFFC为1时,写0清零;为1 时写1清零) EnableInterrupts; } 注意:ATD模块要着重注意:(1)标志位清零(比较复杂)(2)多通道转换后的储存顺序(3)精度的选择和转换速度(4) 单个通道与多通道转换的区别 定时器模块程序示例 Void Timer_Init(void){ TSCR1=0X90; //使能定时器并设置为自动清除标志TFLG1 TSCR2=0X03; //设置分频系数为8,及23

相关主题