Time of Update: 2018-12-05
一.線程的同步#include "Poco/Thread.h"#include "Poco/Mutex.h"#include <iostream>#include <string>using Poco::Mutex;static int count = 0;class Concurrent{ public: void criticalSection(std::string str){ Mutex::ScopedLock
Time of Update: 2018-12-05
如何從零開始開發一款嵌入式產品(20年的嵌入式經驗) 來源:www.armjishu.com作者:jesse轉載請註明出處 首先,如果你有幸看到這篇文章,千萬不要試圖在2個小時內閱讀完,就算你2個小時閱讀完,我相信你也不會理解裡面講解的精華之處,我相信,你應該將此文章,慢慢品嘗,這絕對是一篇需要品嘗2~3天,再結合自己過往的經驗,加上自己的思考,我相信會對你不僅僅是技術能力,甚至包括整體的思維方式都會有一個非常大的提高。
Time of Update: 2018-12-05
關於utf16和base64的編解碼規則的介紹,已有許多網友做了很詳細的介紹,所以這裡不再贅述。本文也是在參考眾多網友的文章,改寫而成的,這裡把自己寫的奉獻出來給需要的人,部分代碼的原作者已無從考證,故無法註明出處。#include <stdio.h>#include <stdlib.h>#define ENCODEstatic const char cb64[] =
Time of Update: 2018-12-05
我們用的是DM9161EP,這次做板後發現,也是ping不通,有的板或者乾脆就自舉不了。暴汗,反覆查原理圖,沒發現什麼問題。後來換成以前買的一批DM9161E,就好了。害死人了。分析了一下原因,可能有以下幾個:1. 這批是假貨?2. 因為帶P的是無鉛產品,抗靜電差,可能封裝不好,在物流過程中被靜電打掉了?3. 焊接過程中,焊溫過高,導致晶片損傷?不得而知。還請Davicom的工程師解釋一下。 今天上論壇,發現也有同仁遇到這種問題。見http://bbs.21ic.com/frame.php?
Time of Update: 2018-12-05
根據前面兩篇的分析,已經寫好了所需要的相關函數,因而最後一篇就只剩下寫個main.cpp函數,調用這些函數,如下:#include"AACCodecHelper.h"#include<stdio.h>extern int nPCMBufferSize;int main(int argc,char* argv[]){ FILE* fpIn; FILE* fpOut; fpIn = fopen(argv[1], "rb"); fpOut = fopen(argv[
Time of Update: 2018-12-05
#include <Poco/AutoPtr.h>#include <iostream>using Poco::AutoPtr;class object{public: object(int a):data(a),count(1){} ~object(){}void printData(){ std::cout<<"data->"<<data<<std::endl;
Time of Update: 2018-12-05
對於{tagshow(event)}">電子產品來說,印製線路板{tagshow(event)}">設計是其從電{tagshow(event)}">原理圖變成一個具體產品必經的一道設計工序,其設計的合理性與產品生產及產品品質緊密相關,而對於許多剛從事電子設計的人員來說,在這方面經驗較少,雖然已學會了印製線路板設計{tagshow(event)}">軟體,但設計出的印製線路板常有這樣那樣的問題,而許多電子刊物上少有這方面文章介紹,筆者曾多年從事印製線路板設計的工作,在此將印製線路板設計的點滴經驗與
Time of Update: 2018-12-05
這次又被單位派到了現場。 本以為自己的任務完成後,就無須再去。可是現場驗收的不順,導致單位緊急安排我飛到現場。 在路上,我一直在想,我去能做什麼呢?我負責的模組,應該沒有啥問題。至於另一通訊模組的不穩定,與我有何關係呢? 到了現場,才發現問題的嚴峻。因為我們裝置的不穩定,使得甲方對我們意見很大。 主管測試我們裝置的人員,一直向上面彙報我們裝置的種種弊病。
Time of Update: 2018-12-05
為了正常工作,守護進程應該實現為單一實例的,也就是在任一時刻只運行該守護進程的一個副本,因為這個守護進程要排它的訪問一個裝置。這裡需要用到檔案鎖的機制,如果守護進程建立一個檔案,並且在整個檔案上加上一把鎖,那就只允許建立一把這樣的寫鎖,在此之後如果試圖再建立一把這樣的寫鎖就將失敗,以此向續守護進程副本指明已經有一個副本正在運行。而這個鎖檔案通常都放在/var/run目錄中,鎖檔案的名字通常是name.pid,其中name是此守護進程的名字。注意,守護進程可能需要有root許可權才能在此目錄下建立
Time of Update: 2018-12-05
原以為一個日誌模板寫起來應該很簡單才對,當自己真正開始動手做起來才知道沒那麼容易,有很多東西要考慮。事實上,寫這篇博文的時候,我還沒有完成我想要的日誌模板,至少我認為我現在的模板不夠健壯,沒有達到我對它的要求。寫下來,一方面是個階段性的總結,一方面是重新審視自己的不足。一、目標 1、記錄檔命名:程式名時間.log; 2、即時記錄,記錄檔刪除後,再調用會及時產生log記錄檔; 3、日誌內容包含調用的檔案名稱、行數、時間、內容;
Time of Update: 2018-12-05
話不多說,直接上源碼,如下:1.繼承Event,DataEvent.aspackage event{import flash.events.Event;public class DataEvent extends Event{private var eventData:*;private var eventData1:*;public function
Time of Update: 2018-12-05
該作者通過複原傳真整個過程,分析mgetty-1.1.36源碼得到的分析結果,具有參考意義。http://hi.baidu.com/kkernel/blog/item/c331c0291b7bdef999250aa0.htmlAuther: Guo Wenxue Data: 2008.11.20 參考3類傳真機收發傳真的過程:http://hi.baidu.com/kkernel/blog/item/05ffd52e87e9b9574ec22663.html參考mgetty-1.1.
Time of Update: 2018-12-05
一.定義一個視窗類別:package{ import flash.display.Sprite; public class Layerextends Sprite { //視窗層 protectedvar _windowLayer:Sprite; publicfunction Layer() { init(); } privatefunction init():void {
Time of Update: 2018-12-05
昨天從老家趕回上海。晚上睡覺的時候還在想著工作上遇到的問題,做夢的時候都在想。早上起來的時候,頭都暈沉沉的。 昨天查了一個晚上的資料,關於linux 下spi slave controller driver的資料,有點收穫,但是沒有結果。給“國際友人”寫了信,也沒有回應。看來未來一個星期,日子估計很難熬了。 眼看著時間一天天在消逝,項目節點一步步逼近,心裡很是忐忑不安。雖然估計足了很多困難,但真正困難來臨時,還是會手忙腳亂。 既是挑戰,也是機會。無論如何,要在這個過程中掌握許多東西,無關於結果。
Time of Update: 2018-12-05
一.Notification.cpp:#include <Poco/NotificationCenter.h>#include <Poco/Notification.h>#include <Poco/Observer.h>#include <Poco/NObserver.h>#include <Poco/AutoPtr.h>#include <iostream>using Poco::NotificationCenter;u
Time of Update: 2018-12-05
目前處於搭建平台階段。現已完成homer2410的u-boot移植(nand flash啟動),yaffs2檔案系統,2.6.24.4核心移植,LCD驅動移植,RTC移植,USB移植,CS8900移植,進度還算順利。 下個星期進行SD/MMC卡移植,MiniGUI移植。不過,公司項目高溫實驗也差不多了。估計還要進入軟體完善階段了。也許要分出時間來忙了。
Time of Update: 2018-12-05
根據前三篇的分析,只需要寫個makefile檔案對main.cpp,AACCodecHelper.cpp進行編譯即可,如下:makefile:CXX=g++OBJECTS=main.o AACCodecHelper.oLIBS=-L/usr/local/lib -lfaac -Wl,-rpath,/usr/local/lib -I/usrwavToAAC:$(OBJECTS) $(CXX) $(OBJECTS) -o darling
Time of Update: 2018-12-05
開源項目網址:http://code.google.com/p/homer2/ 簡介 Homer2 是一個開源嵌入式項目,目的是建立一個家庭機器人平台,力求打造一個忠實可靠的家庭機器人,就像“星球大戰”裡的R2-D2那麼可愛。此平台基於開源作業系統linux。 Homer2項目也是一個社區,所有人都可以參加,協助設計自己理想中的機器人平台。並能在這個過程中,學到所有相關arm-linux開發經驗。 Homer2支援的硬體 本項目早期採用S3C2410?開發板,等早期程式基本完善後,進行硬體設計,
Time of Update: 2018-12-05
今天還算順利,移植了SD,MMC驅動。主要是開源項目openmoko補丁讓這個工作變得十分簡單。沒有細細分析代碼,一切都水到渠成。 下午看了minigui,看了老魏的書《LinuxuClinux + MiniGUI 嵌入式系統開發原理、工具及過程》 ,書上寫的果然很詳細,原來現在的很多有關交叉編譯,busybox使用等書也都是抄的老魏的書上的。按照書上步驟,很容易搭建了minigui的pc平台,運行了樣本程式,很不錯。下一步將minigui移植到s3c2410上。
Time of Update: 2018-12-05
flash檔案系統在嵌入式linux系統中是必須的,無論是作為唯讀根檔案系統還是作為可寫的使用者檔案系統。目前在linux-2.6.14核心上 移植flash檔案系統。下載相應核心,打好at91rm9200的補丁後,卻發現先前移植nand檔案系統的方法在flash檔案系統中完全不行。只好從頭開始了。 星光AT91RM9200開發板的flash晶片是SST39VF3201,16 位 ,4M 。按目前計劃,準備分區為三個區,分別為uboot(0x40000), kernel(0x1c0000)