原创 智能小車37:異常在ARM、JAVA、硬件裏的實現

幾乎所有編程語言都有異常,可以說有程序就有異常。今天學習Arm的中斷(異常)處理,聯想到Java的異常,硬件中如何實現等問題,下面給大家分享一下。 一、Arm的中斷。1.觸發異常 2.保存現場 3.cpu進入異常工作模式,程序指針(pc)

原创 智能小車31:電路板V1.0安裝指南

經過上次慘痛的教訓,這次設計的電路板終於能用了,雖然還有小問題。先看一下這次的板子: 優點是: 1.四個角經過處理不割手了。 2.孔徑大小比較合適。

原创 搜索系統7:索引查詢方法與評價方法

一、 多條件的查詢方法: 之前已經介紹過倒排索引的結構。在查單個詞的時候比較簡單,直接查從索引裏找是否有這個詞對應的文檔列表就行了。但如果條件是and、or、not這樣的條件,怎麼處理呢? and:對多個條件分別取文檔列表後,再取交集。

原创 智能小車42:openwrt的系統配置與gpio操作

一、openwrt的系統配置openwrt也是基於Linux,因此它與大多數Linux系統一樣都有以下配置文件: 1./etc/rc.local 該文件是一個shell腳本,是在系統開機之後最後會調用到的腳本。也就是說,當有任何想要開機

原创 智能小車36:如何使用存儲器NandFlash

之前我寫過一篇文章來介紹硬改tp-link路由器,就是更換它的flash。那個時候就發現路由器這種設備硬盤(flash)的容量比內存容量小得多,flash是16MB,內存是64MB。今天買了本嵌入式的教程才知道,存儲器的分類是這樣的。fl

原创 智能小車32:安裝超聲波測距

一、硬件準備 1.購買超聲波模塊一個 2.設計超聲波安裝電路板 剛好今天我買的小臺鋸到了,可以把萬能板鋸成我想要的尺寸了。另外還要準備電鑽給電路板打孔。 切割成小切並打孔後就可以安裝線與超聲波的插座了,我選擇了2個4p的排母。 在背面需要

原创 智能小車35:從彙編指令bne聊起

今天學習韋東山老師的《存儲管理器實驗》這節課時出現了以下彙編代碼,由於沒有系統的學習過彙編指令,下面的代碼真是不懂。 1: ldr r4, [r1],#4 @ 從Steppingstone讀取4字節的數據,並讓源地址加4 str r4,

原创 智能小車44:最小系統其實很簡單

今天最終於搭了一個最小系統。敢說最小,因爲只需要1個芯片。爲了展示燒錄程序的效果,加了個電阻和LED燈。但燈閃得太慢,不是程序裏寫的500毫秒,所以

原创 智能小車30:雙軸舵機的安裝與調試

之前我安裝的控制電視的紅外發送頭是用了一個上下傳動的舵機來控制上下的方向,用小車自已的轉動控制左右的方向。而紅外發射頭是綁在舵轉盤上的。這當然也能達到控制的目的,但這種綁的方式不容易重複安裝,不穩定,還很醜。另外攝像頭也無法用這種方式來安

原创 智能小車38:晶振原理與串口的使用

一、振盪器的電氣原理 能夠產生振盪電流的電路叫做振盪電路。一般由電阻、電感、電容等元件和電子器件所組成。由電感線圈l和電容器c相連而成的lc電路是最簡單的一種振盪電路,其固有頻率爲f=[sx(]1[]2πlc。 如下圖: 圖裏的的電容充放

原创 智能小車34:arduino與arm的彙編程序開發

爲了解底層技術,一直就想學習下彙編程序。但以前學習的都是理論,沒有在真實環境實踐過,時間長了就忘了。目前手頭有arduino uno板子與arm 2

原创 智能小車43:avr溶絲位晶振的設置

我們用AtmelStudio來開發了avr點亮一盞Led的實驗,實驗中是把程序燒進了arduino uno板,沒有什麼問題。 這兩天我準備用ardu

原创 智能小車34:彙編與C語言一起玩

長時間寫java程序,但從來沒去研究main函數是如何執行的,今天學習嵌入式終於知道了原理。 之前看過一本30天做一個操作系統這本書,可以通過寫個2進制文件來啓動系統。然後進化到彙編語言,通過工具把彙編轉爲二進制一樣可以啓動系統(虛擬機)

原创 搜索系統12:從solrj學習負載均衡的實現

我下面分析的solrj的版本是5.3.1,先看一下它的請求處理過程。 我們重點分析下這個LBHttpSolrClient.request方法,這個版本中有兩個request方法,我這隻分析request(final SolrRequest

原创 智能小車41:用Atmel Studio7開發Arduino uno程序

以前有一篇是用Atmel Studio做arduino彙編程序的,相當於hello world。最近學習avr單片機,發現這個Atmel studi