*** error 65: access violation at C:0x001B : no 'execute/read' permission
转自:http://blog.csdn.net/chenqiai0/article/details/7827071
很多人在进行串口调试的时候会遇到这个问题,请大家略看我的代码,解决方法在其中
//实验目的:串口调试助手上输入数据0-9,然后再数码管显示
org 00H
ljmp start
org 23H //中断入口地址
ljmp uart_interrupt
org 30H
start:
mov P0,#0xff//设置初始值
mov dptr,#numb
lcall en
lcall UART_init
here: sjmp here //好比是一个while(1)循环
;首先3/8译码器使能 并且选中第一个数码管用于显示
en:
clr P1.4
setb P1.3
clr P1.0
clr P1.1
clr P1.2
ret
//uart初始化
UART_init:
mov TMOD,#0x20 //0010 0000 说明在定时器1的工作方式2下工作
mov TH1,#0xFD
mov TL1,#0xFD
setb TR1 //定时器1运行控制位=1,说明开始计时
mov SCON,#0x50 //0101 0000 前两位说明在串口工作方式1 第三位SM2在方式1设置为0 第四位REN=1允许串口接收
setb EA
setb ES
//setb ET1 //错误:*** error 65: access violation at C:0x001B : no 'execute/read' permission
//解决办法:timer1是做为串行通信的波特率发生器,设置为方式2(自动填充)为ET1被置位,而timer1没有跳转函数(因为是自动填充)
//所以timer1 会执行中断,跳转到中断入口0x1B,使程序跑飞了。不置位ET1就可以了
ret
//中断服务程序
uart_interrupt:
send:
mov A,#0x02
anl A,SCON
cjne A,#2, receive
clr TI
setb REN
receive:
mov A,#0x01
anl A,SCON
cjne A,#1,quit
clr RI
mov R4,SBUF
mov R3,SBUF
mov A,R4
subb A,#0x30
movc A,@A+dptr
mov P0,A
addc A,#0x30
mov SBUF,R3
clr REN
quit:
reti
//0-9
numb:
DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
end
大家注意看ET1=1这一段,注释就是解决方法
*** error 65: access violation at C:0x001B : no 'execute/read' permission的更多相关文章
- STM32 KEIL不能输入仿真引脚端口error 65: access violation at 0x40021000 : no 'read' permission
使用MDK自己创建一个STM32F103ZE核的项目 加入源码后编译,正常,在线仿真单步执行出现如下问题 error 65: access violation at 0x40021000 : no ' ...
- error 65: access violation at 0x40021000 : no 'read' permission
http://blog.csdn.net/stephen_yu/article/details/7725247 使用MDK自己创建一个STM32F103VE核的项目 加入源码后编译,正常,在线仿真单步 ...
- MDK5.00中*** error 65: access violation at 0xFFFFFFFC : no 'write' permission的一种解决方法
http://blog.csdn.net/coderfun/article/details/9417289 这是在调试过程中的修改方法,所以在每次运行的时候,都要设置. 先进入调试模式(crtl+F5 ...
- laravel migrate时报错:Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes
今天在学习laravel的路由模型绑定时,在按照文档执行php artisan migrate时报错. In Connection.php line 664: SQLSTATE[42000]: Syn ...
- 【laravel5.6】 Illuminate\Database\QueryException : SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 1000 bytes
在进行数据迁移时候报错: 特殊字段太长报错, php artisan migrate 现在utf8mb4包括存储emojis支持.如果你运行MySQL v5.7.7或者更高版本,则不需要做任何事情. ...
- 解决laravel出现Syntax error or access violation: 1055 '***' isn't in GROUP BY
laravel 5.3 以后默认开启 mysql严格模式(strict)在mysql在严格模式下, 并且开启了ONLY_FULL_GROUP_BY的情况下,group by 的字段没有出现在 sele ...
- SQLSTATE[42000]: Syntax error or access violation: 1253 COLLATION 'utf8mb4_unicode_ci' is not valid for CHARACTER SET 'binary'
SQLSTATE[42000]: Syntax error or access violation: 1253 COLLATION 'utf8mb4_unicode_ci' is not valid ...
- laravel5.5 Syntax error or access violation: 1071 Specified key was too long
在laravel5.5执行数据迁移时 php artisan migrate 先说下系统环境: ubutun Ubuntu 16.04.3 LTS mysql:5.6.35-log 经查自Larave ...
- 解决 “access violation at address xxxxxxxxx”错误
在进行磁盘整理的时候,打开Foxmail的时候出现了“access violation at address32383137”错误 和“access violation at address00000 ...
随机推荐
- Bluebox Security最新提报Android漏洞的初步探讨(转)
Bluebox Security在7月3号的时候,在官网上发布了一个据称99% Android机器都有的一个漏洞.国内最早在4号开始有媒体报道,并持续升温.该漏洞可使攻击者在不更改Android应用 ...
- 多线程Java Socket编程示例
package org.merit.test.socket; import java.io.BufferedReader; import java.io.IOException; import jav ...
- pythonDjango开发-自定义模板标签
1.在APP同级目录新建文件夹'templatetags' 并在文件夹下创建__init__.py和定义标签用的customer.py文件 2.在customer.py文件中定义自定义标签 from ...
- Gitlab+Jenkins学习之路(十)之Jenkins按角色授权和Pipeline
一.Jenkins按角色授权 当一个公司的开发分为多个组别,或者是多个项目等等.用于公司内部测试,让开发人员自行构建测试,此时不可能让所有的开发都在公用一个构建,这样变得很混乱,为了解决这一问题,je ...
- P4284 [SHOI2014]概率充电器
P4284 [SHOI2014]概率充电器 今天上课讲到的题orz,第一次做这种上下搞两次dp的题. g[i]表示i的子树(包括i)不给i充电的概率. f[i]表示i的父亲不给i充电的概率. g[]可 ...
- mysql索引原理及查询速度优化
一 介绍 为何要有索引? 一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,在生产环境中,我们遇到最多的,也是最容易出问题的,还是一些复杂的查询操作,因此对查询语句 ...
- DMA-Direct Memory Access
什么是? DMA 首先它是一种数据的传输方式:其次传输包括从设备到内存.内存到存储.内存到内存等:最后,它是在不经过cpu的情况下实现数据传输.. DAM主要有共享缓存DMA,Scatter/Gath ...
- .net中 多线程 笔记(基础)
1. 在进程中可以有多个线程同时执行代码.进程之间是相对独立的,一个进程无法访问另一个进程的数据(除非利用分布式计算方式),一个进程运行的失败也不会影响其他进程的运行,Windows系统就是利用进程把 ...
- HackRF 无线门铃信号录制与重放
本文内容.开发板及配件仅限用于学校或科研院所开展科研实验! 淘宝店铺名称:开源SDR实验室 HackRF链接:https://item.taobao.com/item.htm?spm=a1z10.1- ...
- 一种利用ADO连接池操作MySQL的解决方案(VC++)
VC++连接MySQL数据库 常用的方式有三种:ADO.mysql++,mysql API ; 本文只讲述ADO的连接方式. 为什么要使用连接池? 对于简单的数据库应用,完全可以先创建一个常连接(此连 ...