手机waitting for debugger后断点停不下来

这几天换了个手机,运行项目可以的,但是项目设了断点后运行,手机也弹出waittingfor debugger,弹框小时候却没有进入断点,而是正常运行了,
我用了别而手机试,进入了debug模式,就这个手机不行,。描述:waittingfor debugger框停留好几秒才消失, 选择开发者模式-等待调试器确认,后 在弹出框消失后又弹出一个, 进不去,所以循环弹,同时eclipse控制台输出:
[2015-03-13 10:45:11 - ddms] null
java.lang.NullPointerException
at org.eclipse.debug.internal.ui.DebugUIPlugin.launchInBackground(DebugUIPlugin.java:1286)
at org.eclipse.debug.ui.DebugUITools.launch(DebugUITools.java:753)
at com.android.ide.eclipse.adt.internal.launch.AndroidLaunchController.debugRunningApp(AndroidLaunchController.java:178)
at com.android.ide.eclipse.adt.internal.launch.AndroidLaunchController.clientChanged(AndroidLaunchController.java:1749)
at com.android.ddmlib.AndroidDebugBridge.clientChanged(AndroidDebugBridge.java:926)
at com.android.ddmlib.Device.update(Device.java:774)
at com.android.ddmlib.Client.update(Client.java:903)
at com.android.ddmlib.HandleWait.handleWAIT(HandleWait.java:88)
at com.android.ddmlib.HandleWait.handleChunk(HandleWait.java:66)
at com.android.ddmlib.MonitorThread.callHandler(MonitorThread.java:414)
at com.android.ddmlib.MonitorThread.processClientActivity(MonitorThread.java:322)
at com.android.ddmlib.MonitorThread.run(MonitorThread.java:263)
怎么解?

3个回答

已经确定是手机的问题了,真是少见

在eclipse调试完了不就可以进入了

vpractical
csdn用户R 结贴了好像
大约 5 年之前 回复
vpractical
csdn用户R 结贴了好像
大约 5 年之前 回复
vpractical
csdn用户R 回复vpractical:
大约 5 年之前 回复
vpractical
csdn用户R 其实不对的,你一个人分就给你吧
大约 5 年之前 回复

我的手机也是这种情况,vivo x5l 的

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
个别程序不能在安卓studio中调试

有两个程序不能在studio中调试,运行是没问题的,就是调试时总出现![图片说明](https://img-ask.csdn.net/upload/201603/31/1459424536_249400.png)一直等待,手机界面一直是waitting for debugger的界面,如果点击force close按钮,则会退出程序,其它程序可以调试,就是这两个程序不能调试,在其它电脑上也是出现同样的问题,运行的log日志中也没有错误 ,急求大神解决,如果能帮助解决的,QQ295058823,解决完必有重谢,急求,急求

vscode调试弹窗Session-1 timed out waiting for debuggee to spawn

vscode调试python代码弹窗出现Session-1 timed out waiting for debuggee to spawn,终端是python Debug console,但是选非调试运行可以正常输出。右键.py文件,在终端运行也可以正常输出,此时终端是python。 ![图片说明](https://img-ask.csdn.net/upload/202003/05/1583398822_75938.png)![图片说明](https://img-ask.csdn.net/upload/202003/05/1583399115_634064.png)

输入“adb logcat”命令出现“waiting for device” 信息被挂起

当我在终端输入`adb devices`命令时,显示设备已连接 List of devices attached 0123456789ABCDEF device 但是当我输入`adb logcat`命令,系统显示以下信息,被挂起 waiting for device 这是什么原因呢?我是在 cts上测试的。

windows2008启动Docker Quickstart Terminal时卡在Waitong for an IP要怎么解决?

windows2008启动Docker Quickstart Terminal时卡在Waitong for an IP要怎么解决? ![图片说明](https://img-ask.csdn.net/upload/201909/10/1568106652_184492.jpg)

求助:vs code ”Session-1 timed out waiting for debuggee to spawn“解决

![图片说明](https://img-ask.csdn.net/upload/202003/02/1583116877_294317.png) **试过网上改launch.json的方法,改成如下:** ``` // Use IntelliSense to learn about possible attributes. // Hover to view descriptions of existing attributes. // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { "type": "chrome", "request": "launch", "name": "Launch Chrome against localhost", "url": "${file}", "sourceMaps": true, "webRoot": "${workspaceRoot}" }, { "name": "nodeLauch", //单独调试js,即可以直接运行js "type": "node", "request": "launch", "program": "${file}", //这个配置成你要调试的文件、${file}当前打开的文件 "stopOnEntry": false, "args": [], "cwd": "${workspaceRoot}", "runtimeExecutable": null, "runtimeArgs": [ "--nolazy" ], "env": { "NODE_ENV": "development" }, "console": "internalConsole", "preLaunchTask": "", "sourceMaps": false } ] ``` 但仍会报错

程序突然跑不起来,然后提示超时,错误如下,求大神解决

org.eclipse.jdi.timeoutException:timeout occurred while waiting for packet 4172 occurred resuming thread

关于TFTPD问题,已经不知何解了,望帮助。

背景:欲利用TFTPD给开发板烧写boot、uImage、rootfs。 平台:win7、Ubuntu10.04、海思H3515 第一种方法: 下载tftp32,配置好路径和服务器IP; 板子处于uboot命令状态,利用板子ping win7主机机可以ping通。 开始使用tftp 82000000 uImage烧写。 结果:每次烧写一半就卡主了,就烧写失败。 查看tftp32的日志:如下: Connection received from 192.168.1.10 on port 3276 [18/03 22:53:54.640] Read request for file <uImage>. Mode octet [18/03 22:53:54.641] OACK: <timeout=1,tsize=3193424,blksize=1468,> [18/03 22:53:54.641] Using local port 64785 [18/03 22:53:54.641] TIMEOUT waiting for Ack block #1001 [18/03 22:54:04.382] Connection received from 192.168.1.10 on port 3670 [18/03 22:54:04.467] Read request for file <uImage>. Mode octet [18/03 22:54:04.467] OACK: <timeout=1,tsize=3193424,blksize=1468,> [18/03 22:54:04.470] Using local port 62299 [18/03 22:54:04.470] TIMEOUT waiting for Ack block #283 [18/03 22:54:11.501] Connection received from 192.168.1.10 on port 2696 [18/03 22:54:11.636] Read request for file <uImage>. Mode octet [18/03 22:54:11.637] OACK: <timeout=1,tsize=3193424,blksize=1468,> [18/03 22:54:11.637] Using local port 62300 [18/03 22:54:11.637] TIMEOUT waiting for Ack block #0 [18/03 22:54:17.687] 第二种方法: 在虚拟机中Ubuntu搭建ftpd服务器;在虚拟机中自测tftpd服务器正常; 板子处于uboot命令状态,利用板子ping虚拟机可以ping通。 开始使用tftp 82000000 uImage烧写。 结果:每次烧写一半就卡主了,就烧写失败。 特别说明: 板子是可以正常烧写的;在另一台win7电脑上用第一种方法烧写正常。 本想利用tftp32的日志来查问题,Google不到什么内容,所以来救助大家,谢谢!

Oracle中session出现network waitting

存储过程在plsql中调用时很顺利,几分钟就出结果了。但是通过sqlplus调用时执行到一定过程时session就一直处于network waitting的状态

如何用request.getAttribute接收另一个servlet的request.setAttribute

本人在学习servlet的,发现在一个Aservlet中setAttribute后,再Bservlet中用getAttribute中拿不到,查了很多信息都说要使用request.getRequestDispatcher(),但是request.getRequestDispatcher()只有在Bservlet中使用有效,如何在Aservlet中使用求大神指导具体怎么用,怎么实现Aservlet的setAttribute在Bservlet中getAttribute? Aservlet中的setAttribute protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setAttribute("imessage","hi,fServlet,i'm hServlet"); } Bservlet中的getAttribute String imessage =request.getAttribute ("imessage").toString(); if(imessage!=null&&!"".equals(imessage)&&imessage.contains("hServlet")){ response.getWriter().print("hi,hServlet,i'm fServlet,i'm waitting for you!!!"); }else { response.getWriter().print("nobodys!"); } }

Hibernate的getSession.save()方法无法保存对象!急,waitting online!

我使用SSH开发的一项目最近遇到一个非常棘手的问题,有一张订单表SaleOrder,字段稍微有点多,添加数据的时候由于是同时插入多个表的记录所以放在一个Transaction中保持一致性,DEBUG调试数据执行到插入订单对象的语句时就卡住不动了,也不报异常,本人对Hibernate的知识了解甚少,希望各位高人多多指教。 是不是主键策略的问题?起初我以为是连接池的问题,但是其他的插入查询语句都正常,唯独对订单的插入和修改不行。 创建订单的Dao函数: [code="java"] public boolean createSaleOrder(SaleOrder so, Orderappend oa, List<SaleProduct> spList) { Session ses = getSessionFactory().openSession(); Transaction tran = ses.beginTransaction(); try { tran.begin(); Serializable serialOa = ses.save(oa); Orderappend orderappend = (Orderappend) ses.get(Orderappend.class, serialOa); so.setOrderappend(orderappend);// 设置订单附加信息 Serializable serialSo = ses.save(so); // DEBUG调试时执行到这里就卡住不动了,show_sql语句也打印出来了 SaleOrder tempSo = (SaleOrder) ses.get(SaleOrder.class, serialSo); for (SaleProduct sp : spList) { sp.setSaleOrder(tempSo); ses.save(sp); } tran.commit(); } catch (Exception ex) { tran.rollback(); } finally { ses.close(); } return tran.wasCommitted(); } [/code] SaleOrder表是使用MyEclipse自动生成的映射文件: [code="xml"] <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <!-- Mapping file autogenerated by MyEclipse Persistence Tools --> <hibernate-mapping> <class name="com.bom_mis.entity.saleEntity.SaleOrder" table="sale_order" schema="my_serv" catalog="eectrl_db"> <id name="soId" type="java.lang.Integer"> <column name="so_id" /> <generator class="native" /> </id> <many-to-one name="orderrevokecause" class="com.bom_mis.entity.saleEntity.Orderrevokecause" fetch="select"> <column name="so_orc_id" /> </many-to-one> <many-to-one name="orderappend" class="com.bom_mis.entity.saleEntity.Orderappend" fetch="select"> <column name="so_oa_id" not-null="true" /> </many-to-one> <property name="soState" type="java.lang.Integer"> <column name="so_state" /> </property> <property name="soType" type="java.lang.Byte"> <column name="so_type" /> </property> <property name="soIsCompact" type="java.lang.Byte"> <column name="so_is_compact" /> </property> <property name="soQualityKeepTime" type="java.lang.Integer"> <column name="so_quality_keep_time" /> </property> <property name="soTrafficWise" type="java.lang.Integer"> <column name="so_traffic_wise" /> </property> <property name="soTrafficRate" type="java.lang.Integer"> <column name="so_traffic_rate" /> </property> <property name="soRequireId" type="java.lang.Integer"> <column name="so_require_id" not-null="true" /> </property> <property name="soConsignId" type="java.lang.Integer"> <column name="so_consign_id" not-null="true" /> </property> <property name="soDoOrderMember" type="java.lang.String" update="false"> <column name="so_do_order_member" length="60" /> </property> <property name="soProvideSn" type="java.lang.String"> <column name="so_provide_sn" length="100" not-null="true" /> </property> <property name="soRequireName" type="java.lang.String"> <column name="so_require_name" length="300" /> </property> <property name="soConsignName" type="java.lang.String"> <column name="so_consign_name" length="300" /> </property> <property name="soDeliveryTime" type="java.lang.String"> <column name="so_delivery_time" length="100" not-null="true" /> </property> <property name="soNumberType" type="java.lang.String"> <column name="so_number_type" length="60" /> </property> <property name="soPactNumber" type="java.lang.String"> <column name="so_pact_number" length="100" not-null="true" unique="true" /> </property> <property name="soClientNumber" type="java.lang.String"> <column name="so_client_number" length="100" /> </property> <property name="soSignAddress" type="java.lang.String"> <column name="so_sign_address" length="60" /> </property> <property name="soSignDate" type="java.util.Date"> <column name="so_sign_date" length="23" /> </property> <property name="soCreateDate" type="java.util.Date" insert="false" update="false"> <column name="so_create_date" length="23" /> </property> <property name="soProductStandard" type="java.lang.String"> <column name="so_product_standard" length="100" /> </property> <property name="soArrivePlatform" type="java.lang.String"> <column name="so_arrive_platform" length="100" /> </property> <property name="soAddressDetail" type="java.lang.String"> <column name="so_address_detail" length="600" /> </property> <property name="soRandomBackup" type="java.lang.String"> <column name="so_random_backup" length="300" /> </property> <property name="soBalanceWise" type="java.lang.String"> <column name="so_balance_wise" length="300" /> </property> <set name="salepaymentthings" inverse="true"> <key> <column name="paymentsoid" /> </key> <one-to-many class="com.bom_mis.entity.saleEntity.Salepaymentthing" /> </set> <set name="consignOrders" inverse="true"> <key> <column name="co_so_id" not-null="true" /> </key> <one-to-many class="com.bom_mis.entity.saleEntity.ConsignOrder" /> </set> <set name="produceAdviceOrders" inverse="true"> <key> <column name="pao_so_id" not-null="true" /> </key> <one-to-many class="com.bom_mis.entity.saleEntity.ProduceAdviceOrder" /> </set> <set name="saleProducts" inverse="true"> <key> <column name="sp_so_id" /> </key> <one-to-many class="com.bom_mis.entity.saleEntity.SaleProduct" /> </set> <set name="modifySaleOrders" inverse="true"> <key> <column name="so_saleorder_id" /> </key> <one-to-many class="com.bom_mis.entity.saleEntity.ModifySaleOrder" /> </set> </class> </hibernate-mapping> [/code] [b]问题补充:[/b] 还有修改订单的函数也有这种现象,所以我感觉是订单对象的问题,跟连接池和其他应该没关系,我用的是C3p0和jtds。

win10下vs2015双机调试驱动附加内核Waiting to reconnect...

小弟在win10下用windbg双机调试,倒是没什么问题。 也就是x64加载驱动一直失败,貌似是证书的原因,不知道开启内核调试能否解决。 使用vs2015双机调试,添加设备什么安装步骤全部成功,只是在附加内核进程的时候遇到了如下问题:vs的dbg窗口一直显示waitting reconnect 。点击中断系统可以被断下,但是驱动就是没有运行,也不知道是咋回事,情况如下图: ![图片说明](https://img-ask.csdn.net/upload/201611/11/1478853627_937462.png) ![图片说明](https://img-ask.csdn.net/upload/201611/11/1478853640_419998.png)

MysqL :Lost connection to Mysql server during query。

目前用C写的mysql代码,在Linux下运行,老是出现“Lost connection to Mysql server during query”的错误根据百度方法修改my.cnf配置文件中的max_allowed_packet或者添加'skip-name-tables'或修改'wait_timeout'等参数都没效果,而且mysql的日志里面也无错误信息,真心不知道该怎么修改了

myeclipse2015 保存项目代码时经常提示user operation is waiting

已经按照网上说法进行优化, 是因为项目比较大导致的吗?还是myeclipse2015的问题? (关闭build automatically可以改善,还有其他的办法吗?) 谢谢了~ ![图片说明](https://img-ask.csdn.net/upload/201502/04/1423019225_290355.png)

linux 环境,tcgetsid(STDOUT_FILENO),返回error

linux 环境,tcgetsid(STDOUT_FILENO),返回error: Inappropriate ioctl for device 实验,检测会话是否存在: getsid(0),替换 返回SID=29307 实验说明会话存在,那么tcgetsid( argumen 【?】),argument应该怎么填写呢? 源码: #include"apue.h" int main() { pid_t pid; if((pid=fork())<0) err_sys("fork error"); else if(pid!=0) exit(0); else { printf("waitting for parent leaving\n"); sleep(5); pid_t pid,pgid,pid4,pid3,sid; if((sid=setsid())==-1) err_sys("sersid error"); pid=getpid(); pgid=getpgrp(); if(pid==pgid) printf("The current process becomes the process group id :%ld\n",(long)pid); if((sid=tcgetsid(STDIN_FILENO))==-1) { printf("EBADF=%d\t,ENOTTY=%d\n",EBADF,ENOTTY); printf("errno:%d\n",errno); err_sys("tcgetsid error"); } /*#include<termios.h> *pid_t tcgetsid(int fd); *return the session ID ,only when fd refers to the controlling terminal of our session.Otherwise -1 is returned,and errno is set appropriately.*/ printf("SID=%ld\n",(long)sid); } exit(0); }

如何使用VSCode在Docker中调试Golang应用程序?

<div class="post-text" itemprop="text"> <p>I'm learning debug Golang application in Docker. I have success with <code>dlv connect</code> in shell. I could add breakpoint, continue, next... I can do noting in VSCode, but waitting for <code>halting</code>. </p> <p>I click left on function main, until a red point. Then click the green button, which like 'play'. Program in container run, but can not stop on function main.</p> <p>Did I use VSCode in wrong way? I need your help. Thank you. </p> <h2>This is my delve image:</h2> <pre><code>#Dockerfile FROM supinf/go:1.8-builder RUN apk --no-cache add tini \ &amp;&amp; apk --no-cache add --virtual build-dependencies git \ # Compile delve &amp;&amp; go get github.com/derekparker/delve/cmd/dlv \ &amp;&amp; cd $GOPATH/src/github.com/derekparker/delve \ &amp;&amp; go install github.com/derekparker/delve/cmd/dlv \ # Clean up &amp;&amp; apk del --purge -r build-dependencies \ &amp;&amp; rm -rf /go/src/* ENTRYPOINT ["/sbin/tini", "--"] CMD ["dlv", "-h"] </code></pre> <p><code>docker build -t mydelve .</code></p> <h2>This is my golang code:</h2> <pre><code>package main import ( "fmt" "sync" "time" ) func dostuff(wg *sync.WaitGroup, i int) { fmt.Printf("goroutine id %d ", i) time.Sleep(60 * time.Second) fmt.Printf("end goroutine id %d ", i) wg.Done() } func main() { var wg sync.WaitGroup workers := 10 wg.Add(workers) for i := 0; i &lt; workers; i++ { go dostuff(&amp;wg, i) } wg.Wait() } </code></pre> <h2>This is cmd to run container:</h2> <pre><code>docker run --rm -p 2345:2345 -v $GOPATH/src:/go/src -w /go/src/test/dlv --security-opt seccomp=unconfined mydelve dlv debug --headless --listen=:2345 --log` </code></pre> <h2>connect to container</h2> <p><code>dlv connect 127.0.0.1:2345 --wd . --log</code></p> <p>It works.</p> <h2>VSCode</h2> <p>launch.json</p> <pre><code>{ "version": "0.2.0", "configurations": [ { "name": "Remote", "type": "go", "request": "launch", "mode": "remote", "program": "${fileDirname}", "port": 2345, "host": "127.0.0.1", "env": {}, "args": [] } ] } </code></pre> <p>Logs in container</p> <pre><code>$ docker run --rm -p 2345:2345 -v $GOPATH/src:/go/src -w /go/src/test/dlv --security-opt seccomp=unconfined mydelve dlv debug --headless --listen=:2345 --log 2017/05/22 09:07:56 server.go:73: Using API v1 2017/05/22 09:07:56 debugger.go:97: launching process with args: [/go/src/test/dlv/debug] API server listening at: [::]:2345 2017/05/22 09:08:00 debugger.go:505: continuing goroutine id 3 goroutine id 9 goroutine id 4 goroutine id 5 goroutine id 6 goroutine id 7 goroutine id 8 goroutine id 1 goroutine id 0 goroutine id 2 end goroutine id 6 end goroutine id 3 end goroutine id 9 end goroutine id 4 end goroutine id 5 end goroutine id 8 end goroutine id 7 end goroutine id 1 end goroutine id 0 end goroutine id 2 2017/05/22 09:08:10 debugger.go:496: halting </code></pre> </div>

tomcat jvm 大量线程waiting on condition,如何解决?

大佬们好,做性能压测遇到及其奇怪的问题,机器load极高,甚至飙到100+,逻辑核数只有16核 ![图片说明](https://img-ask.csdn.net/upload/201904/19/1555639361_818159.png) jstack dump的线程有一半的线程都在waiting on condition,而且都是一些tomcat的线程池之类的问题线程栈如下: ![图片说明](https://img-ask.csdn.net/upload/201904/19/1555638646_167074.png) 53%的线程都是如下堆栈 ``` "catalina-exec-7" daemon prio=10 tid=0x00007f52fc016800 nid=0x1430 waiting on condition [0x00007f537abe7000] java.lang.Thread.State: WAITING (parking) at sun.misc.Unsafe.park(Native Method) - parking to wait for <0x000000073168d480> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186) at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043) at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442) at org.apache.tomcat.util.threads.TaskQueue.take(TaskQueue.java:104) at org.apache.tomcat.util.threads.TaskQueue.take(TaskQueue.java:32) at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:745) Locked ownable synchronizers: - None ``` 附上已确定的可以过滤的影响因素,其中cpu利用率81%,fullgc只有俩次,也不是fullgc问题引起的,parNew gc每次耗时20-40ms之间,也是合理的。内存也足够用 ![图片说明](https://img-ask.csdn.net/upload/201904/19/1555638758_853326.png)

Appengine中的go语言太慢TTFB(延迟)

<div class="post-text" itemprop="text"> <p><a href="https://i.stack.imgur.com/3cjzd.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/3cjzd.png" alt="Check this ttfb"></a></p> <p>I'm testing go lang in appengine. But it's too slow response. I've checked with chrome and found that the problem is 'Waiting(TTFB)'</p> <p>The source code is very simple and official example(<a href="https://github.com/GoogleCloudPlatform/appengine-try-go" rel="nofollow noreferrer">https://github.com/GoogleCloudPlatform/appengine-try-go</a>).</p> <p>What's wrong? Is this normal?</p> </div>

在golang中获取TTFB(到第一个字节的时间)值

<div class="post-text" itemprop="text"> <p>I am trying to get value TTFB and Connect value </p> <pre><code> c := exec.Command( "curl", "-w", "Connect: %{time_connect} TTFB: %{time_starttransfer} Total time: %{time_total}", "-o", "/dev/null", "http://my.domain/favicon.ico") cID, err := c.Run() fmt.Printf("%s", cID) </code></pre> <p>It prints a sting like </p> <pre><code>Connect: 0.205 TTFB: 0.353 Total time: 0.354 </code></pre> <p>However, I need only the value of <code>TTFB , Connect, Total time</code> value in golang variable.</p> <p>Also, Is there any way I can get the values without specifically using curl?</p> </div>

STM32F103CB使用MAX485接收不到

PC向主机串口1发送的数据,由串口2经MAX485转发,从机接收数据并通过MAX485到串口2,最后控制继电器。目前发现串口1发送485发送的数据正常,从机用示波器测量MAX485和串口2处有信号,但是从机芯片无法接收。主机从机发送正常,单独使用串口2发送到串口1也正常。 串口2是PA2和PA3,使用PA4做MAX485控制引脚 #define RS485_TX GPIO_SetBits(GPIOA,GPIO_Pin_4) //485发送使能(在使用时注意有响应延时) #define RS485_RX GPIO_ResetBits(GPIOA,GPIO_Pin_4) //485接收使能(在使用时注意有响应延时) #define USART2_RX_EN 1 //0:不接收;1:接收 #define USART_REC_LEN 200 //定义最大接收字节数 200 u16 USART_RX_STA; // 串口1接收状态标志 u8 USART_RX_BUF[USART_REC_LEN]; //串口1接收缓冲 /** //功能:RS485串口2初始化 //参数:bound:波特率 //返回值:None **/ void RS485_Init(u32 bound) { GPIO_InitTypeDef GPIO_InitStructure; USART_InitTypeDef USART_InitStructure; NVIC_InitTypeDef NVIC_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE); RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART2,ENABLE); /*************************************GPIO Config****************************************/ GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOA,&GPIO_InitStructure); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING; GPIO_Init(GPIOA,&GPIO_InitStructure); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOA,&GPIO_InitStructure); #if USART2_RX_EN /*************************************USART Config*****************************************/ USART_InitStructure.USART_BaudRate = bound; USART_InitStructure.USART_WordLength = USART_WordLength_8b; USART_InitStructure.USART_StopBits = USART_StopBits_1; USART_InitStructure.USART_Parity = USART_Parity_No; USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None; USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx; USART_Init(USART2,&USART_InitStructure); USART_Cmd(USART1, ENABLE); //使能串口外设 USART_ITConfig(USART1, USART_IT_RXNE, ENABLE); //使能串口接收中断 USART_ClearFlag(USART1, USART_FLAG_TC); //软件清除发送完成标志位 /**************************************NVIC Config*****************************************/ NVIC_InitStructure.NVIC_IRQChannel = USART2_IRQn; NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 2; NVIC_InitStructure.NVIC_IRQChannelSubPriority =2; NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; NVIC_Init(&NVIC_InitStructure); #endif RS485_RX; //485默认接收 } //********************串口2中断服务函数**********// void USART2_IRQHandler() { u16 temp; if(USART_GetITStatus(USART2, USART_IT_RXNE) != RESET) //接收中断,必须以0x0d,0x0a结尾 { temp = USART_ReceiveData(USART2); //读取接收到的数据 if((USART_RX_STA & 0x8000) == 0) //接收未完成 { if(USART_RX_STA & 0x4000) //如果接收到了0x0d { if(temp != 0x0a) USART_RX_STA = 0; //接受错误,重新开始接收 else { USART_RX_STA |= 0x8000; //接收完成 } } else //未收到0x0d { if(temp == 0x0d) USART_RX_STA |= 0X4000; else { USART_RX_BUF[USART_RX_STA & 0X3FFF] = temp; USART_RX_STA++; if(USART_RX_STA > (USART_REC_LEN - 1)) USART_RX_STA = 0; //接收数据错误,重新开始接收 } } } }else if(USART_GetFlagStatus(USART2,USART_FLAG_IDLE)!=RESET) { USART_ClearFlag(USART2,USART_FLAG_IDLE); } } int main() { u16 t = 0; u8 length; u16 times=0; SysTick_Init(); Delay_us(100); NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //设置NVIC优先级分组2:2位抢占优先级,2位响应优先级 UART1_Init(115200); UART2_Init(9600); RS485_Init(9600); printf("\r\n01 finsh\r\n"); printf("\r\n等待接收\r\n"); while(1) { if(USART_RX_STA & 0x8000) { RS485_RX; Delay_ms(100); length = USART_RX_STA&0X3fff; //获取数据长 printf("\r\nyour massage is:\r\n"); for(t=0;t<length;t++) { Delay_us(1000); SendByte(USART1,USART_RX_BUF[t]);//自己写的发送函数,正常 } printf("\r\n发送完成\r\n"); RS485_RX; USART_RX_STA=0; }else { times++; if(times % 5000 == 0) { printf("\r\nlab\r\n"); printf("ALIENTEK\r\n\r\n"); } if(times % 200 == 0) printf("\r\n waitting \r\n"); if(times % 30 == 0) printf("\r\nsystem runing\n");//提示系统正在运行 Delay_ms(10); } } }

在中国程序员是青春饭吗?

今年,我也32了 ,为了不给大家误导,咨询了猎头、圈内好友,以及年过35岁的几位老程序员……舍了老脸去揭人家伤疤……希望能给大家以帮助,记得帮我点赞哦。 目录: 你以为的人生 一次又一次的伤害 猎头界的真相 如何应对互联网行业的「中年危机」 一、你以为的人生 刚入行时,拿着傲人的工资,想着好好干,以为我们的人生是这样的: 等真到了那一天,你会发现,你的人生很可能是这样的: ...

程序员请照顾好自己,周末病魔差点一套带走我。

程序员在一个周末的时间,得了重病,差点当场去世,还好及时挽救回来了。

和黑客斗争的 6 天!

互联网公司工作,很难避免不和黑客们打交道,我呆过的两家互联网公司,几乎每月每天每分钟都有黑客在公司网站上扫描。有的是寻找 Sql 注入的缺口,有的是寻找线上服务器可能存在的漏洞,大部分都...

点沙成金:英特尔芯片制造全过程揭密

“亚马逊丛林里的蝴蝶扇动几下翅膀就可能引起两周后美国德州的一次飓风……” 这句人人皆知的话最初用来描述非线性系统中微小参数的变化所引起的系统极大变化。 而在更长的时间尺度内,我们所生活的这个世界就是这样一个异常复杂的非线性系统…… 水泥、穹顶、透视——关于时间与技艺的蝴蝶效应 公元前3000年,古埃及人将尼罗河中挖出的泥浆与纳特龙盐湖中的矿物盐混合,再掺入煅烧石灰石制成的石灰,由此得来了人...

上班一个月,后悔当初着急入职的选择了

最近有个老铁,告诉我说,上班一个月,后悔当初着急入职现在公司了。他之前在美图做手机研发,今年美图那边今年也有一波组织优化调整,他是其中一个,在协商离职后,当时捉急找工作上班,因为有房贷供着,不能没有收入来源。所以匆忙选了一家公司,实际上是一个大型外包公司,主要派遣给其他手机厂商做外包项目。**当时承诺待遇还不错,所以就立马入职去上班了。但是后面入职后,发现薪酬待遇这块并不是HR所说那样,那个HR自...

女程序员,为什么比男程序员少???

昨天看到一档综艺节目,讨论了两个话题:(1)中国学生的数学成绩,平均下来看,会比国外好?为什么?(2)男生的数学成绩,平均下来看,会比女生好?为什么?同时,我又联想到了一个技术圈经常讨...

副业收入是我做程序媛的3倍,工作外的B面人生是怎样的?

提到“程序员”,多数人脑海里首先想到的大约是:为人木讷、薪水超高、工作枯燥…… 然而,当离开工作岗位,撕去层层标签,脱下“程序员”这身外套,有的人生动又有趣,马上展现出了完全不同的A/B面人生! 不论是简单的爱好,还是正经的副业,他们都干得同样出色。偶尔,还能和程序员的特质结合,产生奇妙的“化学反应”。 @Charlotte:平日素颜示人,周末美妆博主 大家都以为程序媛也个个不修边幅,但我们也许...

如果你是老板,你会不会踢了这样的员工?

有个好朋友ZS,是技术总监,昨天问我:“有一个老下属,跟了我很多年,做事勤勤恳恳,主动性也很好。但随着公司的发展,他的进步速度,跟不上团队的步伐了,有点...

我入职阿里后,才知道原来简历这么写

私下里,有不少读者问我:“二哥,如何才能写出一份专业的技术简历呢?我总感觉自己写的简历太烂了,所以投了无数份,都石沉大海了。”说实话,我自己好多年没有写过简历了,但我认识的一个同行,他在阿里,给我说了一些他当年写简历的方法论,我感觉太牛逼了,实在是忍不住,就分享了出来,希望能够帮助到你。 01、简历的本质 作为简历的撰写者,你必须要搞清楚一点,简历的本质是什么,它就是为了来销售你的价值主张的。往深...

外包程序员的幸福生活

今天给你们讲述一个外包程序员的幸福生活。男主是Z哥,不是在外包公司上班的那种,是一名自由职业者,接外包项目自己干。接下来讲的都是真人真事。 先给大家介绍一下男主,Z哥,老程序员,是我十多年前的老同事,技术大牛,当过CTO,也创过业。因为我俩都爱好喝酒、踢球,再加上住的距离不算远,所以一直也断断续续的联系着,我对Z哥的状况也有大概了解。 Z哥几年前创业失败,后来他开始干起了外包,利用自己的技术能...

C++11:一些微小的变化(新的数据类型、template表达式内的空格、nullptr、std::nullptr_t)

本文介绍一些C++的两个新特性,它们虽然微小,但对你的编程十分重要 一、Template表达式内的空格 C++11标准之前建议在“在两个template表达式的闭符之间放一个空格”的要求已经过时了 例如: vector&lt;list&lt;int&gt; &gt;; //C++11之前 vector&lt;list&lt;int&gt;&gt;; //C++11 二、nullptr ...

优雅的替换if-else语句

场景 日常开发,if-else语句写的不少吧??当逻辑分支非常多的时候,if-else套了一层又一层,虽然业务功能倒是实现了,但是看起来是真的很不优雅,尤其是对于我这种有强迫症的程序"猿",看到这么多if-else,脑袋瓜子就嗡嗡的,总想着解锁新姿势:干掉过多的if-else!!!本文将介绍三板斧手段: 优先判断条件,条件不满足的,逻辑及时中断返回; 采用策略模式+工厂模式; 结合注解,锦...

深入剖析Springboot启动原理的底层源码,再也不怕面试官问了!

大家现在应该都对Springboot很熟悉,但是你对他的启动原理了解吗?

离职半年了,老东家又发 offer,回不回?

有小伙伴问松哥这个问题,他在上海某公司,在离职了几个月后,前公司的领导联系到他,希望他能够返聘回去,他很纠结要不要回去? 俗话说好马不吃回头草,但是这个小伙伴既然感到纠结了,我觉得至少说明了两个问题:1.曾经的公司还不错;2.现在的日子也不是很如意。否则应该就不会纠结了。 老实说,松哥之前也有过类似的经历,今天就来和小伙伴们聊聊回头草到底吃不吃。 首先一个基本观点,就是离职了也没必要和老东家弄的苦...

为什么你不想学习?只想玩?人是如何一步一步废掉的

不知道是不是只有我这样子,还是你们也有过类似的经历。 上学的时候总有很多光辉历史,学年名列前茅,或者单科目大佬,但是虽然慢慢地长大了,你开始懈怠了,开始废掉了。。。 什么?你说不知道具体的情况是怎么样的? 我来告诉你: 你常常潜意识里或者心理觉得,自己真正的生活或者奋斗还没有开始。总是幻想着自己还拥有大把时间,还有无限的可能,自己还能逆风翻盘,只不是自己还没开始罢了,自己以后肯定会变得特别厉害...

为什么程序员做外包会被瞧不起?

二哥,有个事想询问下您的意见,您觉得应届生值得去外包吗?公司虽然挺大的,中xx,但待遇感觉挺低,马上要报到,挺纠结的。

当HR压你价,说你只值7K,你该怎么回答?

当HR压你价,说你只值7K时,你可以流畅地回答,记住,是流畅,不能犹豫。 礼貌地说:“7K是吗?了解了。嗯~其实我对贵司的面试官印象很好。只不过,现在我的手头上已经有一份11K的offer。来面试,主要也是自己对贵司挺有兴趣的,所以过来看看……”(未完) 这段话主要是陪HR互诈的同时,从公司兴趣,公司职员印象上,都给予对方正面的肯定,既能提升HR的好感度,又能让谈判气氛融洽,为后面的发挥留足空间。...

面试:第十六章:Java中级开发(16k)

HashMap底层实现原理,红黑树,B+树,B树的结构原理 Spring的AOP和IOC是什么?它们常见的使用场景有哪些?Spring事务,事务的属性,传播行为,数据库隔离级别 Spring和SpringMVC,MyBatis以及SpringBoot的注解分别有哪些?SpringMVC的工作原理,SpringBoot框架的优点,MyBatis框架的优点 SpringCould组件有哪些,他们...

面试阿里p7,被按在地上摩擦,鬼知道我经历了什么?

面试阿里p7被问到的问题(当时我只知道第一个):@Conditional是做什么的?@Conditional多个条件是什么逻辑关系?条件判断在什么时候执...

面试了一个 31 岁程序员,让我有所触动,30岁以上的程序员该何去何从?

最近面试了一个31岁8年经验的程序猿,让我有点感慨,大龄程序猿该何去何从。

【阿里P6面经】二本,curd两年,疯狂复习,拿下阿里offer

二本的读者,在老东家不断学习,最后逆袭

大三实习生,字节跳动面经分享,已拿Offer

说实话,自己的算法,我一个不会,太难了吧

程序员垃圾简历长什么样?

已经连续五年参加大厂校招、社招的技术面试工作,简历看的不下于万份 这篇文章会用实例告诉你,什么是差的程序员简历! 疫情快要结束了,各个公司也都开始春招了,作为即将红遍大江南北的新晋UP主,那当然要为小伙伴们做点事(手动狗头)。 就在公众号里公开征简历,义务帮大家看,并一一点评。《启舰:春招在即,义务帮大家看看简历吧》 一石激起千层浪,三天收到两百多封简历。 花光了两个星期的所有空闲时...

《经典算法案例》01-08:如何使用质数设计扫雷(Minesweeper)游戏

我们都玩过Windows操作系统中的经典游戏扫雷(Minesweeper),如果把质数当作一颗雷,那么,表格中红色的数字哪些是雷(质数)?您能找出多少个呢?文中用列表的方式罗列了10000以内的自然数、质数(素数),6的倍数等,方便大家观察质数的分布规律及特性,以便对算法求解有指导意义。另外,判断质数是初学算法,理解算法重要性的一个非常好的案例。

《Oracle Java SE编程自学与面试指南》最佳学习路线图(2020最新版)

正确选择比瞎努力更重要!

面试官:你连SSO都不懂,就别来面试了

大厂竟然要考我SSO,卧槽。

微软为一人收购一公司?破解索尼程序、写黑客小说,看他彪悍的程序人生!...

作者 | 伍杏玲出品 | CSDN(ID:CSDNnews)格子衬衫、常掉发、双肩包、修电脑、加班多……这些似乎成了大众给程序员的固定标签。近几年流行的“跨界风”开始刷新人们对程序员的...

终于,月薪过5万了!

来看几个问题想不想月薪超过5万?想不想进入公司架构组?想不想成为项目组的负责人?想不想成为spring的高手,超越99%的对手?那么本文内容是你必须要掌握的。本文主要详解bean的生命...

我说我懂多线程,面试官立马给我发了offer

不小心拿了几个offer,有点烦

自从喜欢上了B站这12个UP主,我越来越觉得自己是个废柴了!

不怕告诉你,我自从喜欢上了这12个UP主,哔哩哔哩成为了我手机上最耗电的软件,几乎每天都会看,可是吧,看的越多,我就越觉得自己是个废柴,唉,老天不公啊,不信你看看…… 间接性踌躇满志,持续性混吃等死,都是因为你们……但是,自己的学习力在慢慢变强,这是不容忽视的,推荐给你们! 都说B站是个宝,可是有人不会挖啊,没事,今天咱挖好的送你一箩筐,首先啊,我在B站上最喜欢看这个家伙的视频了,为啥 ,咱撇...

立即提问
相关内容推荐