搜索
bottom↓
楼主: machao

《AVR单片机嵌入式系统原理与应用实践》勘误与修正(2010/04/10 新增加14处) 并继续

[复制链接]

出0入0汤圆

发表于 2007-11-25 22:05:10 | 显示全部楼层
P432,第二个表格,SPSR 的名称写成了 SPCR。

出0入0汤圆

发表于 2007-11-25 22:08:47 | 显示全部楼层
请问马老师,P432,倒数第4行 对SPI数据寄存器SPDR的(  )操作。
括号内是写,还是读还是读写呢?

============================
Alternatively, the SPIF bit is cleared by first reading the SPI Status Register with SPIF set, then accessing
the SPI Data Register (SPDR).

读取SPSR寄存器,将会自动把SPIF清除掉.这个同清T/C中断标志不同.属于特别的清除中断标志位的方式.

另外,通常是先读状态寄存器,然后再读数据寄存器.这一点同读USART的操作类似.

出0入0汤圆

发表于 2007-11-25 22:48:29 | 显示全部楼层
马老师,我注意到,用软件清除SPIF的方式,在读取SPSR时,SPIF就自动清除了,到这里可以说达到软件清中断标志的目的了,为什么还要再访问SPDR呢?

出0入0汤圆

发表于 2007-11-25 22:54:51 | 显示全部楼层
我为我上面的问题要笑了,SPIF中断置位,肯定是有新数据来了,当然要读SPDR,但在读它之前,一定要先读SPSR,来清除中断。

出0入0汤圆

 楼主| 发表于 2007-11-25 23:07:37 | 显示全部楼层
正确

出0入0汤圆

发表于 2007-11-26 00:14:22 | 显示全部楼层
P434,第2行,第9个字,“号”的后面建议加个逗号,否则,整句话很难读。

==================
是应该有",".^_^

出0入0汤圆

发表于 2007-11-26 21:32:36 | 显示全部楼层
P455,第二个表格,寄存器TWCR的第6位 TWEA 印成了TWEV。

==============================
已经到I2C了,剩下不多了^_^

出0入0汤圆

发表于 2007-11-26 23:40:38 | 显示全部楼层
是呀!我以前都是用软件模拟I2C的,AVR的硬件I2C还是第一次去了解,所以还得慢慢看,不能急。

出0入0汤圆

发表于 2007-11-27 20:40:56 | 显示全部楼层
我等第二版去买!我的原则是买第二版!以后不知道往哪方面走了,单单MCU就有好多种,ARM又最近热的发烫!

出0入0汤圆

发表于 2007-11-27 23:49:48 | 显示全部楼层
报告马老师,您的新书俺基本上读完了,用了18天。^_^

============================
希望对你有帮助.另外后面的错误没有了?

出0入0汤圆

发表于 2007-11-28 08:49:35 | 显示全部楼层
偶着急中!!!还没有买到啊!!!

出0入0汤圆

 楼主| 发表于 2007-11-28 17:07:00 | 显示全部楼层
to 113:网上可以购买,折扣也多.

出0入0汤圆

发表于 2007-11-28 18:04:35 | 显示全部楼层
报告马老师,您的新书俺基本上读完了,用了18天。^_^

============================
希望对你有帮助.另外后面的错误没有了?
=====================================================

  非常感谢马老师写出这本高水平的AVR教材!该书将对我今后的AVR开发工作起到指导性的作用。由于心急,所以看书的速度还是快了点,书中的例子中,大部分的程序只是读通后就过去了,没有上机验证(今后会在工程项目中弥补 ^_^)。

  后面的错误我发现了3个,不过你都已经更改了。由于我并不是站在编辑的立场上去看书的,所以不太可能发现全部的错误,后面就要靠其他网友了。

出0入0汤圆

发表于 2007-11-28 20:57:46 | 显示全部楼层
我买过几本有关单片机的书,比较起来觉得这本书是讲解得最好的一本书。一版只出5000本我竟然能买到真太幸运了。

出0入0汤圆

发表于 2007-11-29 13:05:18 | 显示全部楼层
请问马老师:
P169,第4行和第7行
  (地址空间为I/O空间的0X00~0X31)
是不是应该为“(地址空间为I/O空间的0X00~0X1F)”

=================================
是的,十进制和十六进制混乱了,谢谢.

出0入0汤圆

发表于 2007-12-9 15:03:05 | 显示全部楼层
马老师:
    书中P327倒数第三行TIFR |= 0x02;是清除计数器0的比较匹配中断标志,而P329第三段第四行说是计数器2的中断标志位,后边那个是对的吧?另外这一句有什么作用?不要是不是也可以?

===================================
谢谢,改过了。

最好加上,需要T/C2从新开始记录计时脉冲的个数,如果有中断标志(响应T/C0中断过程中产生的)也要清掉。

出0入0汤圆

发表于 2007-12-9 15:42:22 | 显示全部楼层
P308图ADMUX的高两位应该是REFSn,印成了AEFSn

==========================
谢谢

出0入0汤圆

发表于 2007-12-9 20:36:08 | 显示全部楼层
上周参考了一下马老师的165程序做东西的发现,例子的题目写错了。第十二章 串行口接口概述 Page:355 例12.3利用74HC164实现8路并行输入口的扩展 应该是 74HC165。
:)第一次用avr做东西,马老师的书没认真看,倒是参考了不少程序。改天一定好好仔细看看,谢谢马老师!
这次用165扩展键盘的效果还不错,挺稳定的。改天发上来给大家参考。


=============================
谢谢.

出0入0汤圆

发表于 2007-12-11 15:42:10 | 显示全部楼层
第三章:70页
SBR指令的说明有误

=================================
SBR指令和ORI指令实际是一条指令,功能相同.我查过没有发现有误.下面是英文解释.

SBR - Set Bits in Register

Description:
Sets specified bits in register Rd. Performs the logical ORI between the contents of register Rd and constant mask K and places the result in the destination register Rd.

Operation:  Rd <- Rd v K

Syntax:               Operands:                        Program Counter:

(i)SBR Rd,K           16<=d<=31, 0<=K<=255             PC ← PC + 1

16-bit Opcode:  0110 KKKK dddd KKKK

S: N ? V, For signed tests.

V:0 Cleared

N:R7  Set if MSB of the result is set; cleared otherwise.

Z: 'R7 &#8226; 'R6 &#8226; 'R5 &#8226; 'R4 &#8226; 'R3 &#8226; 'R2 &#8226; 'R1 &#8226; 'R0

R (Result) equals Rd after the operation.

Example:

sbr   r16,3      ; Set bits 0 and 1 in r16

sbr   r17,$F0    ; Set 4 MSB in r17

Words: 1 (2 bytes)

Cycles: 1

出0入0汤圆

发表于 2007-12-11 18:41:14 | 显示全部楼层
马老师,P113,第10行的“debug_ware”,应该为“debugwire”


===========================================================
谢谢了.

出0入0汤圆

发表于 2007-12-20 23:08:15 | 显示全部楼层
备查

出0入0汤圆

发表于 2007-12-21 17:31:44 | 显示全部楼层
今天中午刚拿到书,刊误都快改完了才发现493页有一个大黑块,把11,12,13排的前半截的字盖住了。。。

查看过了,我的书没有,可能是个案.

出0入0汤圆

 楼主| 发表于 2007-12-24 19:21:37 | 显示全部楼层
到今天为止,《AVR单片机嵌入式系统原理与应用实践》一书共发现76处各种错误。

作者本人向购买过本书的朋友表示歉意,并提请大家参考LZ位的贴子修改。如果发现还有问题也请及时提出。

出0入0汤圆

发表于 2007-12-25 10:59:26 | 显示全部楼层
马老师,上海的书店已买不到你的书了,在www.newbooks.com.cn上订书也两天了。订单状态:订单已经确认。

出0入0汤圆

发表于 2007-12-26 13:12:33 | 显示全部楼层
今天终于买到马老师的书了,41.6RMB,呵呵

出0入0汤圆

 楼主| 发表于 2008-1-3 15:30:52 | 显示全部楼层
2个月中,在大家的帮助下,供发现了近80处的问题。

非常感谢各位,并祝大家2008年心想事成,一切顺利,步步高。

出0入0汤圆

发表于 2008-1-3 15:48:56 | 显示全部楼层
做个记号
我一边看一边按例程做实验.收获不了,谢谢马老师.祝新年快乐

====================================================
"收获不了"??还是"收获不小"??

出0入0汤圆

发表于 2008-1-5 09:26:58 | 显示全部楼层
P170页,第8行相“与”,因改成相“或”。

======================================
谢谢!这是个比较严重的笔误.

出0入0汤圆

发表于 2008-1-8 20:47:30 | 显示全部楼层
P252页 倒数第4行 PORTA =~PORTA;  //PA0取反输出。?
不应该是 PA0 吧。要不就应该把 PORTA =~PORTA; 改为 PORTA.0 =~PORTA.0;
有些页的页码没有印,应该是应刷厂的问题。


==========================================
这个程序是简单的示例,由于PA口没有用做其它,所以将整个PA口取反了(当然PA0也取反了).这样在整个PA口上都能测到输出.
按题目说明,应该为PORTA.0 =~PORTA.0,包括后面中断中的一句.

出0入0汤圆

发表于 2008-1-10 09:13:29 | 显示全部楼层
马老师:
书中第354页的表12-3(74hc595的功能表)最后4行与TI的74hc595的datasheet中的表不一样?是否有问题?

出0入0汤圆

 楼主| 发表于 2008-1-10 13:50:40 | 显示全部楼层
谢谢132楼的问题和指正,下面做说明:

1.书上的功能表是按使用motorola器件手册中的资料,而光盘中的参考资料是TI的.2个只是引脚的名称定义不同,但是功能是全兼容的.

2.2个功能表都是正确的,但我个人认为motorola给出的功能表比TI资料中的好,容易使用.而TI资料的功能表不容易使用.比如:Reset(SRCLR)在正常使用过程中应该保持高电平(低电平为清另移位寄存器),而TI中很多地方采用任意表示(X),容易造成误解.

3.书中的功能表有一个地方排错了(这是我的疏忽),就是锁存信号(Latch)的上升下降排反了(倒数3\4行),但书下面的解释和程序是对的(因为所有的程序是我自己编写和测试的).其它没有问题.

再次感谢132楼的atmega48

出0入0汤圆

发表于 2008-1-14 12:42:38 | 显示全部楼层
看錯了。還以為印刷錯了呢。

怎麼書中沒有SLEEP詳細的用法呢?還是我沒有找到?

出0入0汤圆

发表于 2008-1-15 13:27:01 | 显示全部楼层
第165页,第八行:
   
    错误:同时可吸纳20mA电流
    正确:同时最大可吸纳40mA电流

第165页,图6-2:
    错误:方向:输入
    正确:方向:输出

==========================================
第1个不能这样写.同时吸纳20mA是标称值.40mA是单个I/O的最大值,8个口同时为40mA的话,要达到320mA!要超过AV的总电流限制(见器件手册).因此在使用中,不能多个I/O口同时都输出或吸纳大电流.

第2个是错误,马上做勘误.谢谢!

出0入0汤圆

发表于 2008-1-16 22:11:22 | 显示全部楼层
第239页,文字第二段,第四行:

错误:或改变OC2的输出逻辑电平
正确:或改变OC0的输出逻辑电平

===============================
谢谢!

出0入0汤圆

发表于 2008-1-21 21:47:15 | 显示全部楼层
改了一小时终于改完了.就是稍微白字多了点,致命的伤不是太多.按键处理的那个程序没改,我已经按照那个思想和自己的想法写了一个了,用着还行.所以就不抄了.呵呵

出0入0汤圆

发表于 2008-1-30 22:20:28 | 显示全部楼层
381页,第7,8,9行
   "RCX"应该为“RXC”

=========================
谢谢了.

出0入0汤圆

发表于 2008-2-8 14:18:03 | 显示全部楼层
呵呵!
我也买了,正在学了

出0入0汤圆

发表于 2008-2-10 23:19:05 | 显示全部楼层
马老师,会出修订版吗?

出0入0汤圆

 楼主| 发表于 2008-2-15 12:56:43 | 显示全部楼层
已经与出版社沟通过.如果再印的话,会做修订的.

出0入0汤圆

发表于 2008-2-22 00:35:46 | 显示全部楼层
第309页,倒数第十一行:
     
    错误:REFS1、REFS2
    正确:REFS1、REFS0

===========================
谢谢!在上面做了勘误

出0入0汤圆

发表于 2008-2-22 09:52:05 | 显示全部楼层
书店就一本,被我买到了,幸运!!!

出0入0汤圆

发表于 2008-2-22 11:52:03 | 显示全部楼层
请问马老师:如果出修订版的话,大概会是什么时候?到时能否在网上第一时间发布,一直在等修订版!

=========================================
什么时间出修订版要听出版社的。他们要根据书销售的情况以及市场的需求制定计划的。如果要出修订版我会第一时间发布消息。

出0入0汤圆

发表于 2008-2-26 10:04:20 | 显示全部楼层
69页
寄存器逻辑“与”下面
AND Rd,Rr       0≤d≤31,0≤d≤31
AND Rd,Rr       0≤d≤31,0≤r≤31


嘿嘿终于有贡献了~~~~~~~~

==========================================
非常感谢了.

出0入0汤圆

发表于 2008-3-2 18:31:33 | 显示全部楼层
P278页到数15行,第12个字“将”应为“讲”。

===========================
谢谢!

出0入0汤圆

发表于 2008-3-11 15:50:16 | 显示全部楼层
P247 图8-13  TOP 印成了  TOR.
另外请问马老师:CLKi/o经8分频后的波形怎么是下图这样啊?经过分频后占空比都变化了?
1

出0入0汤圆

 楼主| 发表于 2008-3-11 18:04:21 | 显示全部楼层
1。谢谢,我马上做勘误。

2。CLKi/o与系统时钟相同,50%的方波。不过CLKi/o和系统时钟之间有个内部硬件控制的开关,当进入一些休眠状态时,该开关打开,CLKi/o就没有了,此时I/O不工作了,仅内部CPU部分工作,这样就省电了。

3。CLKtn是经过T/C的预分频器后作为计数脉冲进入T/C的,预分频器实际也是个计数器,8分频就是每计8个CLK,输出一个CLK,频率是CLKi/o的1/8,但不是50%的方波。对于计数器讲,计数脉冲并不需要50%的方波,因为它是上升(下降)沿除法的,两个上升沿之间周期还是8倍CLKi/o的周期,这个是准确的。

出0入0汤圆

发表于 2008-3-11 22:12:09 | 显示全部楼层
谢谢马老师的作答!

不过有点想不明白,既然CLKtn是CLKi/o经过预分频器进入T/C,就是说CLKi/o没有直接和"control logic"相连,是CLKtn驱动"control logic"的,但为什么书上还是有如:....在接下来的第8个系统时钟的上升沿处将TCNTO的值清为BOTTOM(P246 倒3行),此处为什么不是在CLKtn的上升沿呢(CLKtn和CLKi/o上升沿并不是同一时刻)?  还是我在钻牛角尖?

=====================================================================================================
T/Cn可以由CLKtn的上升沿和下降沿触发,从图中可以看出,CLKtn的上升沿和下降沿都发生在CLKi/o的上升处(1分频除外).图8-11到图8-13实际是CLKtn下降沿触发的时序,而图8-10是上升沿触发的时序.


另外:
书中印刷错误
P333 第14行  禁止T/C1输入捕捉和溢出中断  印成了  T/CI
=======================================================================================================
谢谢!

出0入0汤圆

发表于 2008-3-13 16:36:08 | 显示全部楼层
478页倒数17行和19行的注释部分是不是应该调换位置?

===========================
是的,谢谢!

出0入0汤圆

发表于 2008-3-13 21:41:15 | 显示全部楼层
P444 倒6行 putSPIchar(i)  印成了   putSPIchat(i)
另外:P445 前面都是SPI 后面出现好多ISP

=============================================
谢谢你.这应该是我的笔误了.

出0入0汤圆

发表于 2008-3-20 23:16:23 | 显示全部楼层
385页的第四行是不是应该是PORTD=0X02;

==================================================
M16的PD0(RXD)和PD1(TXD)是USART的数据串入,出口.
DDRD=0X02 将PD1设置为输出工作方式,PD0为输入工作方式.
PORTD=0X03 将PD0的内部上拉置为有效,而PD1输出高电平.因为USART在两个传送帧之间,RXD和TXD均处在高电平状态.
所以PORTD = 0X03没错.

出0入0汤圆

发表于 2008-3-21 18:22:45 | 显示全部楼层
206页的倒数第九行:AVR标志寄存器SREG?应该是状态寄存器吧!

=====================================
是应该叫状态寄存器,里面都是标志位.谢谢!

出0入0汤圆

发表于 2008-3-21 22:10:47 | 显示全部楼层
2。**第154页,倒6行
   错误:程序实例:demo_5_2.asm
   正确:程序实例:demo_5_3.asm
   
   说明:请使用DEMO_5_3\DEMO_5_3目录下的文件。DEMO_5-1,DEMO_5_3是汇编代码,只能在AVR STUDIO中打开。由于AVR STUDIO的项目管理记录的是绝对路径,所以使用时,应该在你的目录环境下,新建一个工程,将原demo_5_3.asm打开,重新编译既可.(CVAVR的过程管理是记录相对路径的,所以不存在该问题).另外书上程序代码中的名称错了,与光盘目录名称不符。
-------------------------------------
(CVAVR的过程管理是记录相对路径的,所以不存在该问题).

这句的 "过程管理" 因该是 "工程管理" 吧?
===========================================
对"工程管理"

出0入0汤圆

发表于 2008-3-25 00:50:12 | 显示全部楼层
316页倒数第5行:flash unsigned char position[6]={......}
我觉得应该是:  flash unsigned char position[4]={......}

==========================
谢谢.

出0入0汤圆

发表于 2008-3-26 10:36:44 | 显示全部楼层
第八章 243页,第6行

原文:
2)比较匹配清0计数器CTC模式(WGM2[1:0]=2)
------------------
括号里的应改成这样吧:(WGM0[1:0]=2)

并且这章里(表8-2、8-3)除了用 WGM0[1:0]=X ,又使用了WGM=X 的方法来表示模式,不好理解。建议都使用 WGM0[1:0]=X 的方式表述,这样和前面的表述一致。


=========================================
谢谢,可以采纳这个建议

出0入0汤圆

发表于 2008-3-26 17:19:31 | 显示全部楼层
222页倒数第8行
原:unsigned char counter;
应该为:volatile unsigned char counter;
做过实验了,修改后才可以。

============================================
在CVAVR环境下使用没有问题.而在WINAVR环境被优化了.这是开发环境的区别.

出0入0汤圆

发表于 2008-3-27 11:25:18 | 显示全部楼层
刚修正完,留个时间

出0入0汤圆

发表于 2008-4-1 12:18:45 | 显示全部楼层

(原文件名:1111.jpg)

请问马老师,第85页中,究竟是ELPM Rd,Z+呢,还是ELMP Rd,Z+??

您的另一本书《ATmega128 原理开发应用指南》及ATmega16的Datasheet却都写着是LPM Rd,Z+,不明白哪种是正确的。

附注:今天又买了您的《AVR单片机嵌入式系统原理与应用实践》,很开心


==================================================================
正确的ELPM,上面是笔误,已改正了.

ELPM是LPM的扩展指令,主要是在FLASH大于64K字节的芯片中使用.M16中只需要使用(支持)LPM.

出0入0汤圆

发表于 2008-4-11 13:59:11 | 显示全部楼层
因为都是在学习 建议把例子说明详细

#define clock_nomal        0       // 正常显示状态      
#define clock_set_1        1       // 时间设置状态
#define clock_set_2        2       // 当前日期设置状态
#define clock_set_3        3       // 终止日期设置状态

eeprom unsigned char e_date_flag;    // EEPROM数据有效标记
eeprom unsigned char e_date_set[3];  // 存放终点日期,如奥运会开幕日期

unsigned char        date[3];                                  // 年、月、日计数和设置单元
unsigned char        time[3],time_set[3];                 // 时、分、秒计数和设置单元
signed int        tian,tian_1,tian_2;                 // 天数单元
unsigned char        dis_buff[10];                         // 显示缓冲区,存放要显示的10个字符的段码值

都像这样就容易懂啦

出0入0汤圆

发表于 2008-4-13 13:46:53 | 显示全部楼层
似乎还有几处错误:
1.28页中图2-3(a)和(b)的18脚,正确的为(OC1B)PD4
2.381页  倒数第四行
"重写寄存器UCSRA的操作总是设置DOR标志位为'0'"应改为:
"重写寄存器UCSRA的操作总是设置PE标志位为'0'"
3.370页 表13-3中UPM2应为UPM0

================================================
谢谢!

出0入0汤圆

发表于 2008-4-15 22:22:31 | 显示全部楼层
p236
倒数18行,CS0[2:0]=8,应为6吧

=====================
谢谢!

目前已经有107个修正勘误了.

出0入0汤圆

发表于 2008-4-16 15:44:47 | 显示全部楼层
我买了本 正看着  很放心

出0入0汤圆

发表于 2008-4-22 20:55:42 | 显示全部楼层
书刚买到  就一口气把勘误都修改了   又累又爽

出0入0汤圆

 楼主| 发表于 2008-4-22 22:08:03 | 显示全部楼层
抱歉了.希望书对你学习有帮助.

目前出版社还有1千多本库存,如果要第二次印刷时,会将上面的错误改掉的.

出0入0汤圆

发表于 2008-4-26 17:09:24 | 显示全部楼层
第91页,倒数11行,置半进位标志指令为SHE。为什么其它置位SREG指令均以"SE"开头?是不是印错了?

=========================
谢谢!是错了.

出0入0汤圆

发表于 2008-4-29 20:42:24 | 显示全部楼层
书本P377最后一行/*等待发送缓冲器空*/
while(!(UCSRA&(1<<UDRE))));貌似这里多了一个括号

============================
是多了个,谢谢!马上做勘误.

出0入0汤圆

发表于 2008-5-8 00:29:58 | 显示全部楼层
P334 if(!(icp_v2 >= icp_v1 && full_ok))  //有溢出,数据无效
与P336 第二段的解释不符

========================================================
有溢出,数据无效是指(icp_v2 >= icp_v1 && full_ok)判断,后面的解释就是解释这个判断,有什么问题请具体指出.

出0入0汤圆

发表于 2008-5-8 10:58:30 | 显示全部楼层
icp_v2 >= icp_v1 && full_ok 时是有溢出,为什么要在if中再取逻辑非?

出0入0汤圆

发表于 2008-5-8 11:50:27 | 显示全部楼层
明白您的意思了,if(!(icp_v2 >= icp_v1 && full_ok)) {……} 是在测量有效的情况下执行,无效的话执行max_icp = 1;
但下一句icp_1=icp_2; 无论测量是否有效都会执行,可能会出错。
另外前边 if (icp_v2 >= icp_v1)  icp_2 = icp_v2 - icp_v1; 在溢出情况下也是执行的。

出210入8汤圆

发表于 2008-5-10 15:56:55 | 显示全部楼层
马老师:P236,第5行,C/T0,应为T/C0吧?

======================================
谢谢了.

出0入0汤圆

发表于 2008-5-13 16:21:34 | 显示全部楼层
第76页第7行:
原文:指令“BRBS 0,K”
是否应该为:指令“BRBC 0,K”

=========================
应该是BRBC 0,K .谢谢!

出0入0汤圆

发表于 2008-5-17 21:50:10 | 显示全部楼层
P303,倒数第10行,ADC应为ACD,不知对否

==================
应为ACD.谢谢!

出0入0汤圆

发表于 2008-5-26 21:26:09 | 显示全部楼层
P249页,正文从下往上数第12行:

原文:“因此TCNT0的初值=255-124”
我觉得改为:“TCNT0的初值=256-125”。更恰当一些。
不知对不对?

P263页,图有2处明显错误,如图:(Atmel的数据手册上也是错误的)

(原文件名:P263.JPG)


=============================
1.两种解释都可以,而且都需要转个弯理解.只是我习惯了前一种的计算方式.还是不动吧,因为书中其它地方也是按第一种方式计算的.

2.是错误,我是直接搬数据手册的.

非常感谢.

出0入0汤圆

发表于 2008-6-4 16:40:30 | 显示全部楼层
马老师:第12章多次出现".....打入....."一词总感觉很别扭,是否改为"....输入...."或其它的词更专业些.

出0入0汤圆

 楼主| 发表于 2008-6-4 18:02:53 | 显示全部楼层
"输入"和"打入"还是有点区别的,"输入"更加体现的是一个过程,而"打入"则更强调一次性的动作.在串行通信过程中,时钟信号是非常重要的,它不仅是一把"丈量的尺",而且在上升沿和下降沿处的动作非常重要.通常讲在上升沿处将数据"打入".

再举个例子,就是CPU的RD控制信号.通常RD为低电平时,是CPU读数据的过程,在RD低电平时间内,外设或存储器应该将数据"输入"到数据总线上,由于器件的不同,"输入"数据可能早点,或晚点,但只要在RD的低电平的时间内就可以了(这里用输入比较好).而RD的上升沿则是把总线上的数据"打入"到寄存器中(这里用打入,更强调一个时间点上的动作).

学数字逻辑电路时,比较多的是电平逻辑.电平是有宽度的.而在MCU以及通信中,上升沿和下降沿时的动作非常重要.

出0入0汤圆

发表于 2008-6-5 09:17:28 | 显示全部楼层
明白了老师的意思,但我对"打入"一词还是保留意见,"输入"也不妥.

出0入0汤圆

发表于 2008-6-29 06:25:45 | 显示全部楼层
p370第一行
位6---UMSEn
应为UMSEL

===================
谢谢。

出0入0汤圆

发表于 2008-7-9 16:36:58 | 显示全部楼层
56页 18题与20题有2个小问题好像重题了

===========================
有些重复,相辅相成,更加全面吧。

出0入0汤圆

发表于 2008-7-10 14:27:43 | 显示全部楼层
453页 图16-5  AVR的TWT模块结构图

应该改为 TWI。。。
================================
谢谢了。

出0入0汤圆

发表于 2008-7-20 09:48:27 | 显示全部楼层
522页,倒6行
“<”是否应该改为“>”?
另外,马老师最好提供Word格式的勘误表(放顶楼,实时更新),方便编辑打印。

===============================
谢谢!。

出0入0汤圆

发表于 2008-7-20 11:23:19 | 显示全部楼层
391页,第14行
“发送和接受”宜改为“发送和接收”?

==================================
谢谢!

出0入0汤圆

发表于 2008-7-20 11:57:24 | 显示全部楼层
543页,第3行
“或支持的”宜改为“或支持得”?

==================================
谢谢。

咨询过相关人员,“支持”为动词,后面为“得”,“支持”为名词,后面用“的”。

类似例子有“做的不好”或“做得不好”。两种好象都可以,需要改动吗?

出0入0汤圆

发表于 2008-7-20 16:44:00 | 显示全部楼层
此贴从2007-10-30,19:41:07 讨论到2008-07-20,11:57:24
火啊

出0入0汤圆

发表于 2008-7-20 19:35:16 | 显示全部楼层
“做的不好”或“做得不好”。两种好象都可以,需要改动吗?
马老师,我觉得上述两句的意思是不同的。

另外,为了使该书更完美,我认为还有一些地方可能需要修改,请斟酌。
1、P10,倒13行
“硬件低层”-->“硬件底层”

2、P12,第8行
“CPU中处理器、控制器”是否应改为“CPU中运算器、控制器”?因为CPU就是中央处理器,它主要由运算器和控制器两部分组成。

3、P25,第2行
“合并成为3个16位的”改为“合并成为3个16位的(地址指针)寄存器”好些,否则这句话好像没有结尾。

4、P27,倒8行
“0~8Mb/s”应改为“0~8MHz”,“0~16Mb/s”应改为“0~16MHz”

5、P28,图(b)上部
PB2(AIN/AINT2)应改为PB2(AIN0/INT2),PB3(AIN1/OSC0)应改为PB3(AIN1/OC0)

6、P29,倒9行起往下
ALU的标准中文名称应为“算术逻辑单元”或“算术逻辑运算单元”,英文为Arithmetic Logic Unit

7、P45,第5行
“R3”应为“R2”

8、P49,第14行
“溶丝位”应为“熔丝位”(建议对全文档搜索一下,可能还有类似这样的错误)

出0入0汤圆

发表于 2008-7-20 21:51:37 | 显示全部楼层
首先谢谢马老师这么敬业。我也很喜欢这本书,做东西时经常拿出来看的。但是你是我这个人性格就这样吧,追求完美……。

建议老师以后有什么地方改正了,按时间写出来,这样我们可以按确认错误的时间来找,不然每次要从头找,有点多了就费时间了。

我都下了4次表了,没次从头挨个定一边还是很那个的。谢谢!

出0入0汤圆

发表于 2008-7-20 22:31:30 | 显示全部楼层
楼上如果追求完美,就买第二次印刷的吧。

出0入0汤圆

发表于 2008-7-21 06:44:54 | 显示全部楼层
楼上的ecat 电子猫这样说好像有些不负责任哦,第二次印刷的也难保没有瑕疵或错误,难道又要人家买第三次、第四次印刷的?我赞同xiaorunyi的说法。

出0入0汤圆

发表于 2008-7-21 07:54:51 | 显示全部楼层
继续。。。。
9、P25,倒8行
“寄存器之间立即数与寄存器之间”改为“寄存器之间、立即数与寄存器之间”?

10、P65,倒2行
“IRET”改为“RETI”

11、P66,第8行和第9行
括号中的说明容易让人联想到直接用PUSH SREG和POP SREG,而这样是错误的,是否把类似212页的程序段也在这里写一下?

12、P94,表3-1第3列最后一行
“声名”改为“声明”

13、P110,4.2.3节第一段多处,以及P113,第4小点
“编程烧入器”本人觉得改为“编程器”或“程序烧录器”合适些,“烧入”的说法似乎不太正式,而“烧录”正式些

14、P117,倒5行
“其软件包由BACIS编译器”改为“其软件包由BASIC编译器”

15、P117,最后一段多处及第15行
IDE的中文名称应为集成开发环境

16、P164,大标题下第6行
“USRAT”改为“USART”

17、P172,第4行
“发光二极管负极”应改为“发光二极管阴极”

另外,前面关于“打入”与“输入”的讨论,我也觉得“打入”一词很别扭,“锁入”如何?

出0入0汤圆

 楼主| 发表于 2008-7-21 09:14:13 | 显示全部楼层
非常感谢ep02,如果你还发现有错误,请及时提醒。我将专门整理出一份补充的勘误表。

同时希望其他朋友,如果发现问题的话也请尽快提出,争取在加印的书中消灭这些错误。

出0入0汤圆

 楼主| 发表于 2008-7-21 22:53:25 | 显示全部楼层
ep02,留个地址吧,新印的书出来后,送你一本,表示谢意。
ma-chao@online.sh.cn

出0入0汤圆

发表于 2008-7-21 23:23:22 | 显示全部楼层
我也买了一本,看到第5章.不过由于没有C语言基础,看来得先停下.

出0入0汤圆

发表于 2008-7-22 07:51:11 | 显示全部楼层
P523,图18-6
位7~位0的名称具体些应写为
TCS3、TCS2、TCS1、TCS0、DS1、DS0、RS1、RS0

============================================
太感谢了,不过这条赶不上了,要等第3次印刷了(不知道会不会了)。

我会先整理成勘误3,帖在网上。

出0入0汤圆

 楼主| 发表于 2008-7-22 17:41:29 | 显示全部楼层
非常感谢ep02的帮助,又找出21处问题,已经整理作为勘误2发上来了。

再发现错误将作为勘误3(不好意思),并采纳 xiaorunyi 12的建议,发补充文件上传。

出0入0汤圆

发表于 2008-7-23 09:46:07 | 显示全部楼层
还有。。。。。。
呵呵,尽可能完美些吧^-^

1、P41,倒12行和倒13行
“GIMSK”一般是AT90S系列采用的名称,中文名为通用中断屏蔽寄存器,在ATmega16中该寄存器改称为GICR(通用中断控制寄存器)(而在ATmega48、88、168中则似乎分散在更多的寄存器中)

2、P134,倒8行
“工程项目管理文件(.APR)”是否应为“工程项目管理文件(.APS)”?

3、P138,倒5行
“Vmalb”应改为“Vmlab”

4、P213,第3行
“lable标号”是否改为“label标号”?

5、P213,倒13行
“对SERG进行保护”应改为“对SREG进行保护”

6、P296,程序段下第1行和第4行(不知有没有改过?倒3行的同样错误在前面勘误表中已指出)
“read_keyboaed”改为“read_keyboard”

7、P85,倒8行和P86,第3行
“PAMPZ寄存器”是否改为“RAMPZ寄存器”?

============================================
谢谢你了。我已经赶快做了核对和整理,并发到出版社了,希望能赶上时间。

出0入0汤圆

 楼主| 发表于 2008-7-23 20:44:19 | 显示全部楼层
佩服ep02的认真、仔细、专业的精神,并再次感谢ep02及时的指出书中几十处的问题。

截止到今天下午,所有LZ位共151处需要做勘误的地方都发给了出版社。出版社方面非常配合,在书已经下厂准备开印的情况下,立即通知缓半天,让编辑人员把我上午整理的勘误(3)消灭掉了。

如果各位还发现问题,请继续发到这里,尽管赶不上这次修改,但我会及时做出勘误表贴上来的。

谢谢大家的支持。

出0入0汤圆

发表于 2008-7-31 17:49:56 | 显示全部楼层
P63页 倒12行
“LMP       ;操作:R0……”改为“LMP  R0,Z;操作:R0……”

出0入0汤圆

发表于 2008-8-4 16:48:25 | 显示全部楼层
楼上的pjzjf,P63页 倒12行没有错误,LPM后面什么都不带意思就是R0 <- (Z),改了反而错了(LMP)。^-^

以下三处可能有误。
1、P502,EEARL寄存器表格下面第2行
“R  R  R  R  R/W  R/W  R/W  R/W ”应改为“R  R  R  R  R  R  R  R/W”,即EEARH的位9~位11均为只读。

2、P502,第2点上面那段,关于EEPROM地址空间的叙述
“从0到512”应改为“从0到511”

3、P509,倒15行
“ATmega8518”是否应为“ATmega8515”?

出0入0汤圆

发表于 2008-8-5 21:47:43 | 显示全部楼层
P194中:5 RD-2PC1(M16)我感觉上应该改成5 R/W-2PC1(M16)因为实验板上印的是R/W.

出0入0汤圆

发表于 2008-8-20 12:42:09 | 显示全部楼层
334页14行
错误:捕捉,1/4MHz计时时钟
正确:捕捉,4MHz计时时钟

出0入0汤圆

发表于 2008-8-29 15:39:56 | 显示全部楼层
P395倒数第6行
图13-10
应为图13-11

出0入0汤圆

发表于 2008-8-29 15:43:33 | 显示全部楼层
P399第5行
...规范的指定....
...规范的制定....

P402倒数第4行
....规范的制订....
....规范的制定....

P402倒数第11行
....规范的制订....
....规范的制定....

P402倒数第16行
....单独制订....
....单独制定....
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-27 07:22

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表