Homebrew (Wikipedie), správce balíčků pro macOS a od verze 2.0.0 také pro Linux, byl vydán ve verzi 4.5.0. Na stránce Homebrew Formulae lze procházet seznamem balíčků. K dispozici jsou také různé statistiky.
Byl vydán Mozilla Firefox 138.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 138 je již k dispozici také na Flathubu a Snapcraftu.
Šestnáctý ročník ne-konference jOpenSpace se koná 3. – 5. října 2025 v Hotelu Antoň v Telči. Pro účast je potřeba vyplnit registrační formulář. Ne-konference neznamená, že se organizátorům nechce připravovat program, ale naopak dává prostor všem pozvaným, aby si program sami složili z toho nejzajímavějšího, čím se v poslední době zabývají nebo co je oslovilo. Obsah, který vytvářejí všichni účastníci, se skládá z desetiminutových
… více »Richard Stallman přednáší ve středu 7. května od 16:30 na Technické univerzitě v Liberci o vlivu technologií na svobodu. Přednáška je určená jak odborné tak laické veřejnosti.
Jean-Baptiste Mardelle se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 25.04.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.
TmuxAI (GitHub) je AI asistent pro práci v terminálu. Vyžaduje účet na OpenRouter.
Byla vydána nová verze R14.1.4 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5, Wikipedie). Přehled novinek i s náhledy v poznámkách k vydání. Podrobný přehled v Changelogu.
Bylo vydáno OpenBSD 7.7. Opět bez písničky.
V Tiraně proběhl letošní Linux App Summit (LAS) (Mastodon). Zatím nesestříhané videozáznamy přednášek jsou k dispozici na YouTube.
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“