Po roce byla vydána nová stabilní verze 25.6.0 svobodného multiplatformního multimediálního přehrávače SMPlayer (Wikipedie).
DNS4EU, tj. evropská infrastruktura služeb DNS založená na vysoce federovaném a distribuovaném ochranném ekosystému, byla spuštěna v testovacím režimu [𝕏]. Na výběr je 5 možností filtrování DNS.
Skriptovací programovací jazyk PHP (PHP: Hypertext Preprocessor, původně Personal Home Page) dnes slaví 30 let. Přesně před třiceti lety, 8. června 1995, oznámil Rasmus Lerdorf vydání PHP Tools (Personal Home Page Tools) verze 1.0.
Ve středu v 17:00 byl ve Francii zablokován přístup k PornHubu a dalším webům pro dospělé. K 17:30 došlo k nárůstu počtu registrací Proton VPN o 1 000 % [𝕏]. Dle nového francouzského zákona jsou provozovatelé těchto webů povinni ověřovat věk uživatelů prostřednictvím průkazu totožnosti nebo platební karty.
Před 32 lety, 6. června 1993, byl spuštěn první český WWW server (ještě pod TLD .cs), pro potřeby fyziků zabývajících se problematikou vysokých energií.
Střílečku Borderlands 2 lze v rámci výprodeje série Borderlands na Steamu získat zdarma napořád, když aktivaci provedete do 8. června 19:00.
Byla vydána nová verze 2.22 svobodného video editoru Flowblade (GitHub, Wikipedie). Přehled novinek v poznámkách k vydání. Videoukázky funkcí Flowblade na Vimeu. Instalovat lze také z Flathubu.
Canonical Launchpad vypíná systém správy verzí Bazaar. Vývojáři mohou své repozitáře do 1. září přemigrovat na Git.
Byla vydána nová verze 2.53.21 svobodného multiplatformního balíku internetových aplikací SeaMonkey (Wikipedie). Přehled novinek v poznámkách k vydání.
Petici za povinné zveřejnění zdrojových kódů softwaru použitých ve veřejné správě lze podepsat na ePetice.
Recently, I bought the Ez430 Chronos watches from Texas Instruments. It is a very interresting toy, having a MSP430 processor inside, can measure ambient temperature, pressure and battery voletage, has an 3-axis accellerometer and can communicate over <1GHz RF (in my case 868MHz). With a well written firmware its battery can last for months. However in order to develop your own firmware you need an ugly IDE provided by TI. Fortunately there is an alternative solution: One can use the msp-gcc to compile the firmware and mspdebug to upload it (using the original USB dongle from TI). On Debian 7 this is very easy, since all the packages are available from the official repository.
First, you have to install MSP-Gcc et al. All you need is to do (as root):
apt-get install binutils-msp430 gcc-msp430 gdb-msp430 msp430-libc msp430mcu mspdebug
Then I just took an »Hello-World« example as found here. Here is my copy (slightly modified - but the original version should compile as well):
//****************************************************************************** // eZ430 chronos hello world // Description: initializes lcd module and shows the string 'hi earth' on the // lcd display becuase 'hello world' is too long // Author: Felix Genicio, Modified by: Petr Tomasek //****************************************************************************** #include <msp430.h> int main(void) { unsigned char * lcdmem; // Clear entire display memory *(unsigned char *)LCDBMEMCTL_ |= LCDCLRBM + LCDCLRM; // LCD_FREQ = ACLK/16/8 = 256Hz // Frame frequency = 256Hz/4 = 64Hz, LCD mux 4, LCD on LCDBCTL0 = (LCDDIV0 + LCDDIV1 + LCDDIV2 + LCDDIV3) | (LCDPRE0 + LCDPRE1) | LCD4MUX | LCDON; // LCB_BLK_FREQ = ACLK/8/4096 = 1Hz LCDBBLKCTL = LCDBLKPRE0 | LCDBLKPRE1 | LCDBLKDIV0 | LCDBLKDIV1 | LCDBLKDIV2 | LCDBLKMOD0; // I/O to COM outputs P5SEL |= (BIT5 | BIT6 | BIT7); P5DIR |= (BIT5 | BIT6 | BIT7); // Activate LCD output LCDBPCTL0 = 0xFFFF; // Select LCD segments S0-S15 LCDBPCTL1 = 0x00FF; // Select LCD segments S16-S22 // LCD_B Base Address is 0A00H page 30 y in SALS554 document // show 'h' lcdmem = (unsigned char *)0x0A21; *lcdmem = (unsigned char)(*lcdmem | (BIT2+BIT1+BIT6+BIT0)); // show 'i' lcdmem = (unsigned char *)0x0A22; *lcdmem = (unsigned char)(*lcdmem | (BIT2)); // show 'E' lcdmem = (unsigned char *)0x0A2B; *lcdmem = (unsigned char)(*lcdmem | (BIT4+BIT5+BIT6+BIT0+BIT3)); // show 'A' lcdmem = (unsigned char *)0x0A2A; *lcdmem = (unsigned char)(*lcdmem | (BIT0+BIT1+BIT2+BIT4+BIT5+BIT6)); // show 'r' lcdmem = (unsigned char *)0x0A29; *lcdmem = (unsigned char)(*lcdmem | (BIT6+BIT5)); // show 't' lcdmem = (unsigned char *)0x0A28; *lcdmem = (unsigned char)(*lcdmem | (BIT4+BIT5+BIT6+BIT3)); // show 'h' lcdmem = (unsigned char *)0x0A27; *lcdmem = (unsigned char)(*lcdmem | (BIT4+BIT5+BIT6+BIT2)); __no_operation(); // For debugger return 0; }
Just put it into a file named hello_world.c
. Then you need to put the following content into the 'Makefile
' (in the same directory, of course):
TARGET = hello_world SOURCES = $(TARGET).c #INCLUDES = -Iinclude PROG_DEVICE = rf2500 ################ # Inspired by: # * http://sourceforge.net/apps/mediawiki/mspgcc/index.php?title=Example:Makefile # * https://github.com/bhutley/OpenChronos/blob/master/makefile # * http://felicitus.org/2012/01/04/building-openchronos-for-ti-ez430-chronos-on-debian/ # ####################################################################################### MCU = cc430f6137 C_ARCH = -D__MSP430_6137__ -DMRFI_CC430 -D__CC430F6137__ C_OPT = -mmcu=$(MCU) $(C_ARCH) CFLAGS = $(C_OPT) -g -Os -Wall -Wunused $(INCLUDES) ASFLAGS = $(C_OPT) -x assembler-with-cpp -Wa,-gstabs LDFLAGS = $(C_OPT) -Wl,-Map=$(TARGET).map # ---------------------- CC = msp430-gcc LD = msp430-ld OBJCOPY = msp430-objcopy SIZE = msp430-size MAKETXT = srec_cat LOAD = mspdebug ######################################################################################## all: $(TARGET).txt $(TARGET).size OBJECTS = $(SOURCES:.c=.o) $(TARGET).elf: $(OBJECTS) $(CC) $(OBJECTS) $(LDFLAGS) $(LIBS) -o $@ %.o: %.c $(CC) -c $(CFLAGS) -o $@ $< %.hex: %.elf $(OBJCOPY) -O ihex $< $@ %.txt: %.hex $(MAKETXT) -O $@ -TITXT $< -I # unix2dos $(TARGET).txt size: $(TARGET).size $(TARGET).size: $(TARGET).elf @echo "# Size of Firmware $(TARGET).elf #" > $(TARGET).size $(SIZE) $(TARGET).elf >> $(TARGET).size @echo >> $(TARGET).size @cat $(TARGET).size load: $(TARGET).txt $(LOAD) $(PROG_DEVICE) "prog $(TARGET).txt" clean: rm -f *.o *.map *.hex $(TARGET).txt $(TARGET).size
Now just type make
to compile the example and/or make load
to upload it to the watch (connected to the USB dongle).
Update: You just need #include <msp430.h>
instead of #include <cc430x613x.h>
.
Tiskni
Sdílej:
srry for bad englando,
Klidně mi můžeš poslat patch s korekutrama . Osobně jsem víc času neměl, ale třeba to i takhle bude někomu užitečný.
no copy pasterino
Pokud ti to nedošlo, tak jde primárně o ten Makefile. Žádný funkční Makefile jsem nenašel a tak jsem se snažil dát dohromady na základě dostupných informací a i tak mi to zabralo 2h, než jsem odladil něco použitelného...
A konečně, pro mně je cokoliv jinḗho, než kombinace (v)vim + příkazová řádka + make prostě „ugly“