2017年2月11日 星期六

Arduino 直接把HEX燒錄進去板子裡(Arduino hex uploader)

在有些情況下,我們寫好的程序或功能,要讓別人來試用時,但又不想要整個源碼給他人
唯一的方式是用HEX(十六進位碼)的格式

從學習ARDUINO之時,只使用ARDUINO IDE那自動的方式幫程序編驛後又上傳好

那我們如何做到只用HEX檔燒錄呢?

在網路上漫漫訊息之中,終於找到了這個XLoader

2016年8月28日 星期日

Control Center4 印表機輔助軟體的錯誤(cc4)


Control Center 4 以下簡稱cc4

日前購買了Xerox的多功能事務機DocuPrint M225Z
有一輔助功能的軟體,您可以藉由cc4來操作機器
或是由機器端操作自動傳到電腦端,這需要有安裝cc4這軟體的
但是…
我共安裝測試了三台電腦,其中有一台電腦很不幸的
在使用cc4的功能產生的錯誤了,
錯誤的訊息大概下如下的格式:(後面最後一碼或許不一樣)
cc4-202-00000008
這是我有記錄下來的其中一個錯誤碼

當您要從電腦上的cc4軟體去操作事務機的掃描或列印功能時
就會出現訊息,並告訴您連線不上機器,也顯示了這錯誤碼

上國外網站找了一些這錯誤碼相關,說實在的我也有看沒有懂的
但似乎有提到用一個小程式去清除%USERPROFILE%\AppData\Local\Temp

這就讓我想到了,再安裝其它軟體時,曾經遇到的問題!
於是我就嚐試著以下的方式重新安裝


1、移除之前所安裝的cc4
2、到控制台裡移除裝置
3、系統->進階系統設定->進階->環境變數
4、把變數TEMP 值改為 c:\temp
5、把變數TMP 值改為 c:\temp
6、重新開機後,再重新安裝就好了

以下是環境變數的視窗畫面,裡面是初始的值,我還沒有改過的


這裡我就不多做解釋了,懂的人就懂
不懂的人就發發問題

我這邊只是做做記錄而已,以備忘之用途




2015年12月10日 星期四

C語言巨集定義技巧

轉載自:
http://miaozl.spaces.live.com/?_c11_blogpart_blogpart=blogview&_c=blogpart&_c02_owner=1&partqs=amonth%3d2%26ayear%3d2007


C語言巨集定義技巧
1,防止一個頭檔被重複包含 

#ifndef COMDEF_H

#define COMDEF_H

//頭檔內容

#endif 

2,重新定義一些類型,防止由於各種平臺和編譯器的不同,而產生的類型位元組數差異,方便移植。 

2015年11月11日 星期三

[Arduino]參考資料

[Arduino] setup() loop() 不在*.ino草稿檔中,如何做?

一般而言在Arduino中,開啟新檔後,就會在其INO檔中看到setup()及loop()這二個函數

例如:
Blink.ino 內容如下:
void setup() {
  // initialize digital pin 13 as an output.
  pinMode(13, OUTPUT);
}

void loop() {
  digitalWrite(13, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);              // wait for a second
  digitalWrite(13, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);              // wait for a second
}

本文打算要來把setup和loop這二個函數搬位置,應該如何實現呢?
在開啟新的arduino檔案時,會有一個INO檔
我們可以加入其它的檔案,如*.h的標頭檔,或是*.cpp的檔

2015年11月8日 星期日

RamPs1.4 基本組裝與步進馬達測試

RamPs1.4 基本組裝與步進馬達測試
1、安裝好Arduino IDE程式,並裝好Aduino Mega 2560的驅動程式
2、將RamPs1.4模組組裝到Mega 2560上,並將RamPs1.4上的步進馬達Jumpper選擇至所需的檔位
3、插入A4988步進馬達驅動器組裝至RamPs1.4上。請注意方向

2015年11月1日 星期日

[Arduino] 指令表 (出自於www.arduino.cc)

出處:https://www.arduino.cc/en/Reference/HomePage

Structure

Control Structures

Further Syntax

Arithmetic Operators

  • = (assignment operator)
  •  (addition)
  • - (subtraction)
  • * (multiplication)
  • / (division)
  • % (modulo)

Comparison Operators

  • == (equal to)
  • != (not equal to)
  • < (less than)
  • > (greater than)
  • <= (less than or equal to)
  • >= (greater than or equal to)

Boolean Operators

  • && (and)
  • || (or)
  • ! (not)

Pointer Access Operators

Bitwise Operators

  • & (bitwise and)
  • | (bitwise or)
  • ^ (bitwise xor)
  • ~ (bitwise not)
  • << (bitshift left)
  • >> (bitshift right)

Compound Operators

  • ++ (increment)
  • -- (decrement)
  • += (compound addition)
  • -= (compound subtraction)
  • *= (compound multiplication)
  • /= (compound division)
  • %= (compound modulo)
  • &= (compound bitwise and)
  • |= (compound bitwise or)

Variables

Constants

Data Types

Conversion

Variable Scope & Qualifiers

Utilities

Functions

Digital I/O

Analog I/O

Due & Zero only

Advanced I/O

Time

Math

Trigonometry

Characters

Random Numbers

Bits and Bytes

External Interrupts

Interrupts

Communication

USB (32u4 based boards and Due/Zero only)