workspace_tools/private_settings.py
# private_settings.py from os.path import join ARM_PATH = "C:/Keil/ARM/ARMCC" ARM_BIN = join(ARM_PATH, "bin") ARM_INC = join(ARM_PATH, "include") ARM_LIB = join(ARM_PATH, "lib") ARM_CPPLIB = join(ARM_LIB, "cpplib")
pywinusbの使用例
# USBDAP.py 2013/4/25 import pywinusb.hid class USBDAP: def __init__(self, pname="CMSIS-DAP"): self.dev = None for dev in pywinusb.hid.find_all_hid_devices(): if dev.product_name.find(pname) >= 0: self.dev = dev break assert(self.dev) self.dev.open() self.dev.set_raw_data_handler(self.rx_handler) reports = dev.find_output_reports() assert(len(reports) == 1) self.report = reports[0] def close(self): if self.dev: self.dev.close() def rx_handler(self, data): self.recv_data = data[1:] def write(self, data): assert(len(data) >= 0 and len(data) <= 64) data += [0]*(64-len(data)) self.recv_data = None self.report.send([0] + data) def read(self): while self.recv_data == None: pass return self.recv_data if __name__=="__main__": import time dap = USBDAP("KL25Z CMSIS-DAP") for _ in range(10): dap.write([1,1,1]) # LED ON dap.read() time.sleep(0.2) dap.write([1,1,0]) # LED OFF dap.read() time.sleep(0.2) dap.close()
zipfileとdifflibの使用例
# mydiff.py 2013/4/19 import zipfile import difflib import os.path import sys def mydiff(fromarc, toarc, n=3): to_zip = zipfile.ZipFile(toarc) from_zip = zipfile.ZipFile(fromarc) fromto = [] for t in to_zip.namelist(): name,ext = os.path.splitext(t) s = t if ext == ".cpp": s = name + ".c" for f in from_zip.namelist(): if f.endswith(s): fromto.append([t,f]) for ft in fromto: tofile,fromfile = ft with to_zip.open(tofile, 'U') as f: tolines = f.readlines() with from_zip.open(fromfile, 'U') as f: fromlines = f.readlines() diff = difflib.unified_diff(fromlines, tolines, fromfile, tofile, n=n) sys.stdout.writelines(diff) if __name__ == '__main__': fromarc = "AN11321.zip" toarc = "pms-CMSIS-DAP.zip" mydiff(fromarc, toarc, n=3)
LPC1114FN28
#include "LPC11xx.h" void SystemInit() { } void wait() { __IO int i = 200000; while(i-- > 0) ; } int main() { LPC_GPIO0->DIR = 1<<7; // PIO0_7 output while(1) { LPC_GPIO0->DATA ^= 1<<7; wait(); } }
MPL115A
#include "mbed.h" #include "mbed_debug.h" #if defined(TARGET_KL25Z) SPI spi(PTE1,PTE3,PTE2); // SPI_1 DigitalOut cs(PTE4); #endif int main() { cs = 1; debug(" Read Coefficient(a0,b1,b2,c12)\n"); cs = 0; for(int addr = 0x04; addr <= 0x0b; addr++) { spi.write((addr<<1)|0x80); uint8_t data = spi.write(0x00); debug("%02x: %02x\n", addr, data); } spi.write(0x00); cs = 1; while(1) { debug("Start Conversion\n"); cs = 0; spi.write(0x12<<1); spi.write(0x00); cs = 1; wait_ms(3); //3ms delay debug("Read Results(Padc,Tadc)\n"); cs = 0; for(int addr = 0x00; addr <= 0x03; addr++) { spi.write((addr<<1)|0x80); uint8_t data = spi.write(0x00); debug("%02x: %02x\n", addr, data); } spi.write(0x00); cs = 1; wait_ms(5*1000); } }
app-board-LM75B mbed NXP LPC1768
# app-board-LM75B mbed NXP LPC1768 # http://mbed.org/users/chris/code/app-board-LM75B/ import mbed import sys class LM75B: LM75B_ADDR=0x90 LM75B_Conf=0x01 LM75B_Temp=0x00 def __init__(self, sda, scl): self.i2c = mbed.I2C(sda, scl) cmd = chr(self.LM75B_Conf) + chr(0) self.i2c.write(self.LM75B_ADDR, cmd, 2, 0) def read_u16(self): cmd = chr(self.LM75B_Temp) + chr(0) self.i2c.write(self.LM75B_ADDR, cmd, 1, 0) # Send command string self.i2c.read(self.LM75B_ADDR, cmd, 2, 0) return (ord(cmd[0])<<8)|ord(cmd[1]) tmp = LM75B('p28', 'p27') while 1: v = tmp.read_u16() print v sys.wait(1000)
app-board-RGB mbed NXP LPC1768
# app-board-RGB mbed NXP LPC1768 # http://mbed.org/users/chris/code/app-board-RGB/ import mbed import sys r = mbed.PwmOut('p23') g = mbed.PwmOut('p24') b = mbed.PwmOut('p25') r.period(0.001); while 1: i = 0.0 while i < 1.0: p = 3.0 * i r.write(1.0 - (1.0 - p if p < 1.0 else (p - 2.0 if p > 2.0 else 0.0))) g.write(1.0 - (p if p < 1.0 else (0.0 if p > 2.0 else 2.0 - p))) b.write(1.0 - (0.0 if p < 1.0 else (3.0 - p if p > 2.0 else p - 1.0))) sys.wait(10) # 10ms i += 0.001