公告版位
需要找什麼嗎? 左邊分類或許可以幫助你...

目前日期文章:201310 (20)

瀏覽方式: 標題列表 簡短摘要


黃彥霖 發表在 痞客邦 留言(0) 人氣()

取得所有可用 COM 連接埠名稱,如:COM3、COM5、COM7 ...等等

foreach (string com in System.IO.Ports.SerialPort.GetPortNames()) {//取得所有可用的連接埠
    print (com);
}




黃彥霖 發表在 痞客邦 留言(0) 人氣()

★ 可以直接複製貼上到 C 語言開發環境中,此程式碼可以直接編譯執行(只要你配置好開發環境與硬體)。

執行結果: 輸入 A 之後會自動回傳 ok 訊息

111  

程式碼:

#include "stm32f10x.h"
 
int i;
 

黃彥霖 發表在 痞客邦 留言(0) 人氣()

請勿使用 Aduino 內建的 COM 輸入,內建有些BUG可能無法正確輸出。這裡我是用 Access Port 軟體,也是將資料從COM輸出至Arduino軟體。

下載:http://www.sudt.com/en/ap/download.htm

打開  Access Port 從左上角的齒輪圖案設定 COM 與 包率 (9600、115200...等等)。

OK後按下電源圖案即可與 Arduino通信

在下方的框框輸入 ABC 並按下 Enter 後,點選 [發送資料按鈕] 即可看見 第12腳 LED 發光發亮。

黃彥霖 發表在 痞客邦 留言(1) 人氣()

ADXL345 是一種常見、便宜、簡單、好用的 3 軸加速度計。我這片 ADXL345 模組是我在露天拍賣買的,約台幣 110 元...,比起之前買的 LSM303DLH 就要台幣 6、7 百元要來的便宜多了...Orz

實際接線圖 (右邊小塊板子就是 ADXL345 )

開發板:ST 官方的 STM32VL Discovery
微控制器:STM32F100R8T6 (下面程式碼相容 F100、F103 、F105、F107 等所有 F1 系列)
三軸加速度器:ADXL345

DSC_0157[1]

黃彥霖 發表在 痞客邦 留言(1) 人氣()

ADXL345 是一種常見、便宜、簡單、好用的 3 軸加速度計。我這片 ADXL345 模組是我在露天拍賣買的,約台幣 110 元...,比起之前買的 LSM303DLH 就要台幣 6、7 百元要來的便宜多了...Orz

另外記得 信號線 都要接 10K 上拉電阻,不然會讀不到...( 只要是走 i2c 協定的都要接上拉電阻

實際接線圖 (右邊小塊板子就是 ADXL345 )

3

特寫 ADXL345 模組:

黃彥霖 發表在 痞客邦 留言(43) 人氣()

很棒的資源,請看以下連接

http://mobile.51cto.com/MTK-292727.htm

 

 


黃彥霖 發表在 痞客邦 留言(0) 人氣()

★ 可以直接複製貼上到 C 語言開發環境中,此程式碼可以直接編譯執行(只要你配置好開發環境與硬體)。

執行結果:

5  

程式碼:

#include "stm32f10x.h"
#include "stdio.h"
 
#define I2C_ADDRESS 0x32 // LSM303DLHC I²C 地址

黃彥霖 發表在 痞客邦 留言(3) 人氣()

yui-angel-beats-17494046-1920-1200

    在20世紀60年代期間,研究人員在康耐爾大學進行了一系列有關在音樂背景下進行工作的效果測試。他們對一組微機科學專業的學生進行了調查,把學生分成了兩組,一組喜歡邊聽音樂邊工作,另一組不喜歡這樣做。然後把他們每組中的一半人帶進一個安靜的教室,把另外一半人帶進一個配備了耳機和音樂選擇功能的教室,給兩個教室中參與調查的人一個同樣的Fortran編程問題,讓他們根據說明加以解答。結果是,兩個教室中參與調查的人以同樣的速度和同樣的編程準確度在解答問題,這一點沒有人會感到驚訝。正如任何邊聽流行音樂邊

    在20世紀60年代期間,研究人員在康耐爾大學進行了一系列有關在音樂背景下進行工作的效果測試。他們對一組微機科學專業的學生進行了調查,把學生分成了兩組,一組喜歡邊聽音樂邊工作,另一組不喜歡這樣做。然後把他們每組中的一半人帶進一個安靜的教室,把另外一半人帶進一個配備了耳機和音樂選擇功能的教室,給兩個教室中參與調查的人一個同樣的Fortran編程問題,讓他們根據說明加以解答。結果是,兩個教室中參與調查的人以同樣的速度和同樣的編程準確度在解答問題,這一點沒有人會感到驚訝。正如任何邊聽流行音樂邊做算術家庭作業的小孩那樣,算術需要的、與邏輯有關的那部分大腦沒有受音樂的干擾——而有另外一部分大腦在聽音樂。

    但是康耐爾實驗包含了一張隱蔽的百搭牌。題目說明要求通過一系列的操縱輸入數據流中的號碼來形成輸出數據流。例如,參與調查的人必須移動每個號碼左邊的兩位數字然後除以一百等等。雖然題目說明並沒有直說,但是所有運算的最終效果是每個輸出號碼必須等於它的輸入號碼。有些人意識到了這一點,但是有些人沒有意識到這一點。那些意識到了這一點的人,絕大多數來自那個安靜的教室。

    專業員工每天做的事情中,許多是由左腦的順序處理中心完成的。音樂不會特別乾擾工作,因為是大腦的整個右邊在消化音樂。但不是所有的工作都由左腦完成。可能有讓你說“啊!”的突破會引導你到達一個可以節約數月或數年工作的創造性思路。創造性的飛躍包括在右腦的功能中,如果右腦忙於聽背景音樂台的10001弦樂,那麼就有失去創造性飛躍的可能性。

    環境造成的創造性方面的懲罰是潛在的。因為創造性是一種損失時我們經常注意不到的東西。創造性減少的影響是一個很長的日積月累的過程。公司越沒有生產力,人們就越會沒有激情的火花,只會機械地工作,最優秀的人便會離開。
——《人件》

 

黃彥霖 發表在 痞客邦 留言(0) 人氣()

★ 可以直接複製貼上到 C 語言開發環境中,此程式碼可以直接編譯執行(只要你配置好開發環境與硬體)。

說明:這篇程式碼有點長~~~,不過可以保證編譯可以通過,PB6=I2C-SCL、PB7=I2C-SDA、PB10=UART-Tx、PB11=UART-Rx,UART 包率為 9600

輸出結果:

A11111  

程式碼:

#include "stm32f10x.h"

黃彥霖 發表在 痞客邦 留言(1) 人氣()

★ 可以直接複製貼上到 C 語言開發環境中,此程式碼可以直接編譯執行(只要你配置好開發環境與硬體)。

說明:保證編譯可以通過,實際運行後可以正確輸出,祝大家成功

原理:STM32F4 使用 I2C 讀取 TC74 A0 然後再經由 UART 傳送至電腦中查看。

腳位:
        I2C 腳位:PB6 = SCL,PB7 = SDA
        UART 腳位:PC10 = TX,PC11 = RX,(包率 = 9600)

輸出結果:

黃彥霖 發表在 痞客邦 留言(0) 人氣()

1

Herbert R. Shea

Implanting metal ions into elastomers creates highly stretchable electrodes for tunable optics, beam steering, and cellular manipulation.

The term ‘artificial muscles’ was coined to describe a range of electroactive polymer (EAP) actuators with muscle-like properties such as high flexibility, strain (over 100%), and energy density.1–3 One type of EAP, the dielectric elastomer actuator, consists of a soft elastomer sandwiched between two compliant electrodes generally made of carbon powder (see Figure 1). When a voltage is applied between the electrodes, an electrostatic force is generated that compresses the elastomer thickness, expanding it in-plane. Depending on the boundary conditions, many different actuators and sensors can be made—from large active fins for blimps4 and haptic systems, to centimeter-scale walking, grasping, and swimming robots.1,2

 

2

黃彥霖 發表在 痞客邦 留言(0) 人氣()

現在太多東西都被掛上了“智能”的標籤,但最好的“智能處理器”其實就是我們的大腦。能不能將人腦的思考、計算模式融入到微處理器中,這是科技界多年來一直在追尋的夢想。過去幾年中,高通的研發團隊也在設計新的計算架構,希望處理器能效仿人類的大腦和神經系統,使得設備可以擁有認知能力。這,就是高通的“Zeroth”處理器。

1

高通近日撰文稱,介紹了Zeroth處理器的一些情況,尤其提到了三個主要目標:
1、生物啟發學習
高通表示,Zeroth除了要模仿類似人腦的認知能力,更要從生物學上向人腦學習。除了使用大量代碼預先編程、規定行為,高通還開發了一套軟件工具,可以讓設備隨時自我學習,並從周圍環境中獲得反饋。
作為實例展示,高通設計了一個搭載Zeroth處理器的小型機器人,將其放在一個網格平面中,部分格子塗上不同的顏色。在其走到白色格子的時候給予正面強化,比如鼓勵它表現良好,它就會去尋找更多白色格子,而避開其它顏色的格子。
高通表示,這是通過基於多巴胺能的學習實現的,使用的是硬件內運行的生物學仿真神經網絡,而不是一行行的死代碼。

2

3

4

黃彥霖 發表在 痞客邦 留言(0) 人氣()

★ 可以直接複製貼上到 C 語言開發環境中,此程式碼可以直接編譯執行(只要你配置好開發環境與硬體)。

說明:這篇程式碼有點長~~~,不過可以保證編譯可以通過,PB6=I2C-SCL、PB7=I2C-SDA、PB10=UART-Tx、PB11=UART-Rx,UART 包率為 9600,祝大家都可以成功 (至少我成功了...哈哈哈)

程式碼:

#include "stm32f4xx.h"
#include "stdio.h"
 
#define DS1307_I2C_ADDRESS 0x68 << 1 // DS1307  I²C 地址
 
int i;

黃彥霖 發表在 痞客邦 留言(1) 人氣()

★ 可以直接複製貼上到 C 語言開發環境中,此程式碼可以直接編譯執行(只要你配置好開發環境與硬體)。

說明:本篇程式碼是網路上資源東拼拼西拼拼、右剪又貼,所以有點亂,不過程式碼是保證可以運行的。晚點我會再重新寫一篇簡潔的程式碼,敬請期待...哈哈 !!

原理:STM32F4 使用 I2C 讀取 TC74 A0 然後再經由 UART 傳送至電腦中查看。

腳位:
        I2C 腳位:PB6 = SCL,PB7 = SDA
        UART 腳位:PC10 = TX,PC11 = RX

程式碼:

黃彥霖 發表在 痞客邦 留言(3) 人氣()

看這篇文章之前建議先看 移動滑鼠這篇:http://lolikitty.pixnet.net/blog/post/164570070

using UnityEngine;
using System.Collections;
using System.Runtime.InteropServices;

public class MouseControl : MonoBehaviour
{

    [DllImport("user32")]
    static extern bool SetCursorPos (int X, int Y);

    [DllImport("user32")]

黃彥霖 發表在 痞客邦 留言(0) 人氣()

using UnityEngine;
using System.Collections;
using System.Runtime.InteropServices; // 記得匯入

public class MouseControl : MonoBehaviour {

    [DllImport("user32")] // 使用 user32.dll ,這是系統的 Dll 檔,所以Unity會自動匯入,不用再手動加入 dll 檔
    static extern bool SetCursorPos(int X, int Y);

    void Start () {
        // 遊戲啟動後,會強制移動滑鼠到左上角。我這裡設定為: X = 0 、Y = 0,開發者可依需求設定移動座標。

黃彥霖 發表在 痞客邦 留言(0) 人氣()

using System;
using System.Runtime.InteropServices;

namespace ttt
{
    class MainClass
    {

        [DllImport("user32")]
        static extern bool SetCursorPos(int X, int Y);

黃彥霖 發表在 痞客邦 留言(1) 人氣()

全球手機攝影機主要供應廠商

※ 主要 CIS 廠商 Aptina、OmniVision、Samsung、STMicro 與 Toshiba 共占有行動電話應用市場的 85%

未命名  

 

 

 


黃彥霖 發表在 痞客邦 留言(0) 人氣()

還有一篇基本篇可參考:http://lolikitty.pixnet.net/blog/post/163032620

 

#include <Wire.h>

// LSM303DLHC 的 i2c 地址。由於 Arduino i2c 資料空間是 7 bit 所以要右移一個位元
int i2cAddress = 0x32 >> 1; 

void setup() {
    Serial.begin(9600);
    Serial.println("-------------------");
    Wire.begin(); // 啟用 i2c
    
    writeReg(0x20,0b00100111); // 打開三軸加速計的電源 ,設定每秒讀取10次,啟用XYZ軸
}

void loop() {
  Wire.beginTransmission(i2cAddress);
  Wire.write(0x28 | (1 << 7));
  Wire.endTransmission();
  Wire.requestFrom(i2cAddress, 6);
  
 

  byte xla = Wire.read();
  byte xha = Wire.read();
  byte yla = Wire.read();
  byte yha = Wire.read();
  byte zla = Wire.read();
  byte zha = Wire.read();
  
  int x = (xha << 8 | xla) >> 4;
  int y = (yha << 8 | yla) >> 4;
  int z = (zha << 8 | zla) >> 4;
    
  Serial.print("X : ");
  Serial.print(x);
  Serial.print("       Y : ");
  Serial.print(y);
  Serial.print("       Z : ");
  Serial.println(z);
    
    delay(500);
}

/************************************************************* 
* 寫入佔存器:writeReg(int reg, int value)
* reg:佔存器地址
* value:要寫入的值
*/
void writeReg(int reg, int value){
    Wire.beginTransmission(i2cAddress);   
    Wire.write(reg);
    Wire.write(value);
    Wire.endTransmission();
}

/************************************************************* 
* 讀取佔存器:readReg(int reg)
* reg:要讀取的佔存器地址
*/
int readReg(int reg){
    Wire.beginTransmission(i2cAddress);   
    Wire.write(reg);
    Wire.endTransmission();
    
    Wire.requestFrom(i2cAddress, 1);
    int value = Wire.read();
    Wire.endTransmission();
    
    return value;
}


執行結果:

11111111111  

 

 

 


黃彥霖 發表在 痞客邦 留言(1) 人氣()