- 博客(25)
- 资源 (7)
- 收藏
- 关注
转载 技术创新作业点评
理论与实践在创新过程中的作用.........................创新的重点在提对问题;创新的关键在将复杂的问题简单化,模糊的问题清晰化。以上两点,我认为解答了什么是创新和如何创新这两个问题。提对问题。很难!难在哪里?要提对问题先要确认引起这个问题的需求,需求是综合的,其之后的背景很深很模糊并且很广。在这门课程中老师以较大的篇幅较多的事例讲述这点。我的总结是,创
2013-01-31 17:56:46 671
原创 如何将调用的lib里的函数放到指定地址
1. 在工程中添加所需的.lib文件,然后运行编译,生成.M51文件: 2. 打开.M51文件,找到使用函数的segment name: 3. 根据segment name,在KeilC 的BL51选项卡下按照自己的需求进行指定地址设置,指定地址指令如下: 设置完成后,rebulid工程,在新生成的.M51文件中确认是否按要求更改函数地址:
2013-01-29 16:35:06 2671
转载 Keil C中如何更改程序的起始地址
C51: SETTING PROGRAM START ADDRESSQUESTIONHow do I start my C51 program at an address other than 0000h?ANSWERThere are three steps to relocate your C51 program to start at a different offset.
2013-01-29 13:38:37 8959
转载 使用KEIL C BL51 中,code分配的指令
CODE Linker DirectiveHome »Linking Programs »Directives »Reference » CODEAbbreviationCOArgumentsCODE (〚range〛 〚segment 〚(address)〛 〚, ...〛〛)DefaultNone.
2013-01-29 10:04:30 6328
转载 Keil C Segment 命名规则
Segment Naming ConventionsObjects generated by the Cx51 Compiler (program code, program data, and constant data) are stored in segments which are units of code or data memory. A segment may be rel
2013-01-28 18:50:15 2196
转载 KeilC如何通过linker将文件放入指定存储地址
Linker Location ControlsHome »Advanced Programming »Absolute Memory Locations » Linker Location ControlsAnother method of referencing explicit memory locations is to declare the variables in a
2013-01-28 18:11:40 2917
转载 Keil的lib库函数的封装
在协同工作中,经常会有模块维护和代码封装的问题。把需要封装的代码打成一个lib无疑是一种很好的方式。1.创建lib 创建一个lib很容易,只需要创建一个target,然后把需要封装的代码全部加进来,然后再Options of Target中选择Create Library,然后编译,因为是lib所以不需要链接,编译过了,你的lib就创建了。当然了,为了别人可以轻松的使用,请提供头文
2013-01-28 16:30:10 4090
转载 Keil C51 总线外设操作问题的深入分析
阅读了《单片机与嵌入式系统应用》2005年第10期杂志《经验交流》栏目的一篇文章《Keil C5l对同一端口的连续读取方法》(原文)后,笔者认为该文并未就此问题进行深入准确的分析。文章中提到的两种解决方法并不直接和简单。笔者认为这并非是 Keil C51中不能处理对一个端口进行连续读写的问题,而是对Keil C51的使用不够熟悉和设计不够细致的问题,因此特撰写本文。 本文中对原文提到的问
2013-01-25 17:46:22 719
转载 Keil C51中变量和函数的绝对地址定位问题
Keil C51中变量和函数的绝对地址定位问题:1. 变量绝对地址定位 1) 在定义变量时使用 _at_ 关键字加上地址就可. e.g. unsigned char idata myvar _at_ 0x40; 把变量 myvar 定义在 idata 的 0x4
2013-01-25 16:40:15 5074
转载 C51必读, Startup.A51作用
这里讲述一些初学者学习C51的一些误区和注意事项。高手的特别应用不包括在内。 C忌讳绝对定位 常看见初学者要求使用_at_,这是一种谬误,把C当作ASM看待了。在C中变量的定位是编译器的事情,初学者只要定义变量和变量的作用域,编译器就把一个固定地址给这个变量。怎么取得这个变量的地址?要用指针。比如unsigned char data x;后,x的地址就是&x,你只要查看这
2013-01-23 18:53:47 2923
转载 STARTUP.A51 文件分析
$NOMOD51 ;Ax51宏汇编器控制命令,禁止预定义的8051。使编译器不使能预定义的;8051符号,避免产生重复定义的错误。;------------------------------------------------------------------------------; This file is part of the C51 Compiler package;
2013-01-23 18:30:29 1133
转载 CProgressCtrl控件 VC++
(一)进度条的主要功能 进度条控制(Progress Control)主要用来进行数据读写、文件拷贝和磁盘格式等操作时的工作进度提示情况,如安装程序等,伴随工作进度的进展,进度条的矩形区域从左到右利用当前活动窗口标题条的颜色来不断填充。 进度条控制在MFC类库中的封装类为CProgressCtrl,通常仅作为输出类控制,所以其操作主要是设置进度条的范围和当前位置,并不断地更新当
2013-01-22 13:37:51 639
转载 lib和dll的区别
什么是lib文件,lib和dll的关系如何 (2008-04-18 19:44:37) (1)lib是编译时需要的,dll是运行时需要的。 如果要完成源代码的编译,有lib就够了。 如果也使动态连接的程序运行起来,有dll就够了。 在开发和调试阶段,当然最好都有。 (2)一般的动态库程序有lib文件和dll文件。lib文件是必须在编译期就连接到应用程序中的,而dll文件是
2013-01-21 15:35:09 314
转载 AUTOSAR
AUTOSAR是由欧日的主要汽车生产商和一些芯片制造商推出的产业标准或操作系统。其主要动机是为了应对日益复杂的汽车电子系统:提高系统的灵活性;增加系统的更新和升级性能;改善系统的可靠性和稳定性;在设计过程中能更早地发现问题。目前AUTOSAR的版本是3.1。许多厂商(FREESCALE, RENESAS,Vector, Infineon, WindRiver 等)已经推出了自己的AUTOSAR
2013-01-18 17:59:47 1402
转载 波特率和比特率的区别
在电子通信领域,波特率即调制速率,指的是信号被调制以后在单位时间内的波特数,即单位时间内载波参数变化的次数。它是对信号传输速率的一种度量,通常以“波特每秒”(Bps)为单位。 波特率有时候会同比特率混淆,实际上后者是对信息传输速率(传信率)的度量。波特率可以被理解为单位时间内传输码元符号的个数(传符号率),通过不同的调制方法可以在一个码元上负载多个比特信息。严谨定义:.比特率 在数字信
2013-01-16 09:32:20 722
转载 C#线程篇---你所不知道的线程池(4)
线程的创建和销毁都要耗费大量的时间,有什么更好的办法?用线程池!太多的线程浪费内存资源,有什么更好的办法?用线程池!太多线程有损性能,有什么更好的办法?用线程池!(⊙_⊙)?线程池是什么?继前三篇线程基础之后,我们要来学学线程池了。注意,这些信息相当有用!为了设计和实现可伸缩的、可响应的和可靠的应用程序或组建,线程池是你必须采用的核心技术。线程池是CLR的,线程池自动为你管理线
2013-01-15 09:55:29 523
转载 C#线程篇---Windows调度线程准则(3)
Windows本身就是一个抢占式操作系统,它的实现,必定有某种算法在里面,比如什么时候调度哪些线程,需要花费多长时间等问题。我们时时在用Windows,作为程序员,我们有必要知道其中最贴近我们的算法。为什么这么说?我们对系统发出的命令,获取信息等操作,Windows为什么能这么快作出反应吗?这仅仅是上下文切换那30毫秒的功劳吗?操作系统能依照人的操作,处理当前用户最迫切的请求,并在最短时间
2013-01-15 09:50:46 472
转载 C#线程篇---解答线程之惑(2)
我们都知道,在这个行业,追求的就是用最少的时间学最多的知识,这是我写这个系列最想达到的目标,在最快的时间内,帮助更多的人学习更多的线程知识。 前一篇,讲述了线程基础,给大家铺垫了一个基础,这一篇着重介绍线程的作用及其工作方式,顺便小试牛刀一把。 现在我想提出,最直接的问题是: 为什么要使用线程? 为什么要使用线程?答案只有三点(欢迎补充^_^):使用线程
2013-01-15 09:48:18 423
转载 C#线程篇---让你知道什么是线程(1)
线程线程,进程进程,到底什么是线程,什么是熟练多线程编程?今天来和大家一起讨论讨论线程基础,让大家知道线程的基本构造。说线程之前,先要了解下进程,这个可不能不知道。什么是进程? Microsoft设计操作系统内核时,他们决定在一个进程中运行应用程序的每一个实例,进程也不过就是个应用程序实例要使用资源的集合。(见过烤玉米,烤甘蔗的没?如下图:)
2013-01-15 09:43:20 452
转载 51-STARTUP翻译
文档作者:电子牛;------------------------------------------------------------------------------; This file is part of the C51 Compiler package; 这个文件是C51编译器包的一部分; Copyright (c) 1988-2002 Keil Elektr
2013-01-11 10:26:43 562
转载 keil下C51启动代码详解
这是我在书上看到的,于是把它整理过来。我还没有完全看明白,发上来,和大家一起分享讨论,欢迎大家发表意见! 由于CPU和程序启动代码文件STARTUP.a51的重要性,一些8051派生的CPU产品要求初始化CPU来满足设计中的相应的硬件,因此,有时候用户需要对STARTUP.a51进行修改,所以进行注释一下:;-------------------------------
2013-01-11 10:21:10 1292
原创 C中实现等待功能的语句
如果要实现等待功能,比如说等计时器计满时再执行接下来的操作,可使用while语句:......i=0;while(TF0==0); // 等timer0计满 (TF0=1)i=1;......计数器标志TF0只有0和1两种状态,当计数器没有计满时TF0为0,则程序一直停在while(TF0==0)这里,直到当timer0计数计满后TF0=1时,才执行后面的语句
2013-01-04 14:30:23 3146
VbyOne Spec
2013-03-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人