Чем хорош 8-битный PIC?
По сравнению с другими микроконтроллерами имеет ли какие нибудь явные преимущества данная архитектура?
По сравнению с другими микроконтроллерами имеет ли какие нибудь явные преимущества данная архитектура?
Плата на базе at91sam9g20, добавил возможность управления GPIO в ядре, в документации написано, что должно быть /sys/class/gpio/gpioN, а на деле вижу
# ls /sys/class/gpio/
export gpiochip0 gpiochip32 gpiochip64 gpiochip96 pioC14 pioC15 unexport
Последний релиз 15-м годом? или он со слакой синхронизирован?
1. mydir = `pwd` | mydir = $(pwd)
2. [ -f myfile ] | test -f myfile
3. n1 -eq n2 | n1 = n2
4. n1 -ne n2 | n1 != n2
5. for var in 1 .. 10 do var++ done | for (( var = 1; var < 10; a++))
Приветствую, поставил на Pi3 слаку, использую для одного проекта в качестве build-машины. Сразу чувствуется что 1Гб маловато, есть ли истории успеха по увеличению ОЗУ? Есть еще неприятная особенность, система периодически фризиться при запуске приложения или попытке выполнить команду в консоле. Допустим вы делаете htop, он подвисает на 0,5-3 сек и только после этого htop запускается, подозреваю что это происходит из-за I/O на sdcard.
Бенчмарки показали, что FreeBSD обеспечивает вдвое большую производительность MySQL и PostgreSQL по сравнению с текущими системами Linux на 8-ядерных серверах.
Бенчмарки показывают значительное преимущество в производительности над другими операционными системами UNIX(R) на идентичном многоядерном оборудовании и отражают долгие инвестиции в технологию SMP для ядра FreeBSD.
Наверное это и камень в огород Linux?
ода ZFS и её крутости.
Насколько на сегодняшний день это соответствует действительности?
19.01.2038
В отладочных платах с 32-разрядными ARM'ами данная проблема присутствует, пугает то что подобные встраиваемые решения проникают на ответствевенные объекты. Поведение примерно такое: линукс замирает и потом перезагружается видимо по wdog уже в предыдущее столетие. Есть ли какие нибудь решения данной проблемы? Патчи? Знаю что в опёнке это дело зафиксили.
Дистрибутив TinyCore, в пакетном менеджере никак не могу найти сабж. Где взять?
Неужели этим всем кто то пользуется? Не совсем понятно как это спасает от выстрелов в ноги. По мне так вызывает только рвотный рефлекс при попытке въехать в работу с типами в Аде. Тут еще нет тех типов которые тащит за собой GNAT. Потом при попытке выводить это в stdio или передавать в производные типы код начинает обрастать имиджами, компилятор кряхтит и глохнет. Я понимаю что это поднимает требования к проектированию проекта и заставляет делать отдельное продуманное ТЗ для типов, но как то все это чрезмерно для простого шлепания на мк и хелловордов.И, вероятно, это может делать код платформозависимым.
Max_Width: constant := 10_000; -- Константа имеет универсальный тип Universal_Integer совместимый с другими типами.
-- Производные типы:
type X2 is new Integer range 0 .. 100; -- X производный от типа Integer, с допустимым диапазоном от 0 до 100
type Y1 is range 0 .. 100; -- Тип Y описывается как тип с допустимым диапазоном от 0 до 100,
-- при его описании не указан тип-предок. В этом случае он производен от
-- типа Root_Integer(базовый тип для всех целочисленных типов).
-- Описания целочисленных статических переменных:
Count : Integer;
Amount : Integer := 0;
-- описания целочисленных констант(именованных):
Unity : constant Integer := 1;
Speed_of_Ligth : constant := 300_000; -- тип Universal_Integer
A_Month : Integer range 1 .. 12;
-- описания целочисленных типов и подтипов
subtype Months is Integer range 1 ..12; -- Ограниченный тип Integer, подтипы совместимы с базовыми типом и могут быть с ними "смешаны"
type File_Id is new Integer; -- Новый целочисленный тип
type Result_Range is new Integer range 1 .. 20_000; -- Новый целочисленный тип с объявленным ограничением
type Other_result_Range is range 1 .. 100_000; -- производный от Root_Integer, при этом компилятор будет выбирать подходящий размер целочисленного размера для удловлетворения задаваемого диапазона.
--Модульные типы (беззнаковые):
type Byte is mod 2 ** 8;
CountB : Byte := 255;
-- CountB := CountB +1; результат не вызовет исключения, CountB будет равен 0.
--Вещественные типы
type Float is digits 6 range -16#0.FFFF_FF#E+32 .. 16#0.FFFF_FF#E+32; -- -3.40282E+38 .. 3.40282E+38
type Velocity is new Float;
type Height is new Float; --нельзя случайно смешивать Velocity и Height без явного преобразования типов.
-- Вещественные типы с фиксированной точкой, тип Duration:
-- Представление чисел с фикс. точкой имеет более ограниченный диапазон значений и указанную абсолютную погрешность, которая задается как "delta" этого типа.
type Volt is delta 0.125 range 0.0 .. 255.0;
type Fraction is delta System.Fine_Delta range -1.0 .. 1.0; --четкое определение насколько тип должен быть точным, например позволяет контроллировать ошибки при округлении.
Купил велик, думаю либо самому собрать gps-маяк на базе ARM, или может кто подскажет можно на базе какого нибудь 8-битника? Или использовать отладочную плату с GPRS-модемом?
Требования:
1) Низкое электропотребление.
2) Возможность передачи координат по запросу или по заданному периоду.
3) Возможность удаленного включения/выключения приемника.
Посоветуйте, может кто нибудь из вас что нибудь прикручивал к своим железным коням?
Есть такой девайс, хочу установить на него Linux и какую нибудь открытыю навигационную систему. Есть ли у кого нибудь опыт в данном направлении? еще бы хотелось найти какое нибудь описание данного устройства в плане процессора, периферийных устройств, если придется собирать ядра самому.
Пат написал что пользуется сабжем и очень им доволен. Тем не менее он оставил возможность установки и использования дистрибутива без PulseAudio.
Volkerding
Don't like PulseAudio? Well... I hear you. Personally, it works for me, and it
makes it easier to switch between multiple audio inputs and outputs compared
to using plain ALSA. PulseAudio got off to a rocky start in the Linux world,
where it found itself adopted before it was ready (it was even billed on its
own website at the time as «the software that currently breaks your audio»).
It's my opinion that the reputation that PulseAudio acquired due to problems
back then isn't deserved any longer. If your hardware supports the sampling
rate of the audio data you're trying to play, PulseAudio will not resample it
(and if your hardware doesn't support that rate, resampling can hardly be
avoided). The increased latency has not been an issue here. Nevertheless, I
recognize that there are use cases where PulseAudio is still a detriment.
While I don't generally recommend removing PulseAudio, I'm not going to cram
it down your throat. So, if you'd like to be rid of PulseAudio, head over to
the new extra/pure-alsa-system directory and follow the instructions in the
README file there, and you'll have a PulseAudio-free pure ALSA system.
Thanks to orbea who sent me a small patch for the mpg123.SlackBuild so that
it would detect the lack of PulseAudio and not try to build in support, which
got me to thinking about all of this. Cheers! :-)
Пользователи Slackware, скажите имеет ли смысл сейчас переходить на 86_64 версию? Меня больше всего волнует что нет мультилиба на официальном репозитории и есть переживания что мои тулчейны для некоторых старых архитектур могут поломаться и будет ли работать wine (нужен для SprintLayout и т.п.)? Все ли драйвер поддерживаеммые x86_32 полноценно собираются с ядром x86_64 этой же версии? cast
UVV
splinter@bastille:~/REON/BOILER/2/rza_prj$ cat /proc/cpuinfo
processor : 0
vendor_id : AuthenticAMD
cpu family : 21
model : 2
model name : AMD FX(tm)-4350 Quad-Core Processor
stepping : 0
microcode : 0x6000803
cpu MHz : 4100.000
cache size : 2048 KB
physical id : 0
siblings : 4
core id : 0
cpu cores : 2
apicid : 16
initial apicid : 0
fdiv_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 13
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nonstop_tsc extd_apicid aperfmperf pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 popcnt aes xsave avx f16c lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs xop skinit wdt lwp fma4 tce nodeid_msr tbm topoext perfctr_core perfctr_nb arat cpb hw_pstate npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold vmmcall bmi1
bugs : fxsave_leak sysret_ss_attrs
bogomips : 8438.57
clflush size : 64
cache_alignment : 64
address sizes : 48 bits physical, 48 bits virtual
power management: ts ttp tm 100mhzsteps hwpstate cpb eff_freq_ro
processor : 1
vendor_id : AuthenticAMD
cpu family : 21
model : 2
model name : AMD FX(tm)-4350 Quad-Core Processor
stepping : 0
microcode : 0x6000803
cpu MHz : 1400.000
cache size : 2048 KB
physical id : 0
siblings : 4
core id : 1
cpu cores : 2
apicid : 17
initial apicid : 1
fdiv_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 13
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nonstop_tsc extd_apicid aperfmperf pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 popcnt aes xsave avx f16c lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs xop skinit wdt lwp fma4 tce nodeid_msr tbm topoext perfctr_core perfctr_nb arat cpb hw_pstate npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold vmmcall bmi1
bugs : fxsave_leak sysret_ss_attrs
bogomips : 8438.57
clflush size : 64
cache_alignment : 64
address sizes : 48 bits physical, 48 bits virtual
power management: ts ttp tm 100mhzsteps hwpstate cpb eff_freq_ro
processor : 2
vendor_id : AuthenticAMD
cpu family : 21
model : 2
model name : AMD FX(tm)-4350 Quad-Core Processor
stepping : 0
microcode : 0x6000803
cpu MHz : 1400.000
cache size : 2048 KB
physical id : 0
siblings : 4
core id : 2
cpu cores : 2
apicid : 18
initial apicid : 2
fdiv_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 13
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nonstop_tsc extd_apicid aperfmperf pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 popcnt aes xsave avx f16c lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs xop skinit wdt lwp fma4 tce nodeid_msr tbm topoext perfctr_core perfctr_nb arat cpb hw_pstate npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold vmmcall bmi1
bugs : fxsave_leak sysret_ss_attrs
bogomips : 8438.57
clflush size : 64
cache_alignment : 64
address sizes : 48 bits physical, 48 bits virtual
power management: ts ttp tm 100mhzsteps hwpstate cpb eff_freq_ro
processor : 3
vendor_id : AuthenticAMD
cpu family : 21
model : 2
model name : AMD FX(tm)-4350 Quad-Core Processor
stepping : 0
microcode : 0x6000803
cpu MHz : 1400.000
cache size : 2048 KB
physical id : 0
siblings : 4
core id : 3
cpu cores : 2
apicid : 19
initial apicid : 3
fdiv_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 13
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nonstop_tsc extd_apicid aperfmperf pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 popcnt aes xsave avx f16c lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs xop skinit wdt lwp fma4 tce nodeid_msr tbm topoext perfctr_core perfctr_nb arat cpb hw_pstate npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold vmmcall bmi1
bugs : fxsave_leak sysret_ss_attrs
bogomips : 8438.57
clflush size : 64
cache_alignment : 64
address sizes : 48 bits physical, 48 bits virtual
power management: ts ttp tm 100mhzsteps hwpstate cpb eff_freq_ro
splinter@bastille:~/REON/BOILER/2/rza_prj$ cat /proc/meminfo
MemTotal: 12393132 kB
MemFree: 7756880 kB
MemAvailable: 10280676 kB
Buffers: 307848 kB
Cached: 2626688 kB
SwapCached: 2968 kB
Active: 2235648 kB
Inactive: 2002596 kB
Active(anon): 907460 kB
Inactive(anon): 514320 kB
Active(file): 1328188 kB
Inactive(file): 1488276 kB
Unevictable: 8052 kB
Mlocked: 8052 kB
HighTotal: 11631744 kB
HighFree: 7651184 kB
LowTotal: 761388 kB
LowFree: 105696 kB
SwapTotal: 8191996 kB
SwapFree: 8178420 kB
Dirty: 0 kB
Writeback: 0 kB
AnonPages: 1308816 kB
Mapped: 424652 kB
Shmem: 115252 kB
Slab: 230172 kB
SReclaimable: 183012 kB
SUnreclaim: 47160 kB
KernelStack: 4096 kB
PageTables: 15984 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 14388560 kB
Committed_AS: 5503380 kB
VmallocTotal: 122880 kB
VmallocUsed: 0 kB
VmallocChunk: 0 kB
AnonHugePages: 450560 kB
DirectMap4k: 753656 kB
DirectMap2M: 157696 kB
Есть устройство на базе AT91SAM9G25. ОС Linux-4.1.18. Вот раздел инициализации Nand в dts:
nand {
pinctrl_nand: nand-0 {
atmel,pins =
<AT91_PIOD 0 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD0 periph A Read Enable */
AT91_PIOD 1 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD1 periph A Write Enable */
AT91_PIOD 2 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD2 periph A Address Latch Enable */
AT91_PIOD 3 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD3 periph A Command Latch Enable */
AT91_PIOD 4 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP /* PD4 gpio Chip Enable pin pull_up */
AT91_PIOD 5 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP /* PD5 gpio RDY/BUSY pin pull_up */
AT91_PIOD 6 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD6 periph A Data bit 0 */
AT91_PIOD 7 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD7 periph A Data bit 1 */
AT91_PIOD 8 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD8 periph A Data bit 2 */
AT91_PIOD 9 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD9 periph A Data bit 3 */
AT91_PIOD 10 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD10 periph A Data bit 4 */
AT91_PIOD 11 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD11 periph A Data bit 5 */
AT91_PIOD 12 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD12 periph A Data bit 6 */
AT91_PIOD 13 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD13 periph A Data bit 7 */
};
pinctrl_nand_16bits: nand_16bits-0 {
atmel,pins =
<AT91_PIOD 14 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD14 periph A Data bit 8 */
AT91_PIOD 15 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD15 periph A Data bit 9 */
AT91_PIOD 16 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD16 periph A Data bit 10 */
AT91_PIOD 17 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD17 periph A Data bit 11 */
AT91_PIOD 18 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD18 periph A Data bit 12 */
AT91_PIOD 19 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD19 periph A Data bit 13 */
AT91_PIOD 20 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD20 periph A Data bit 14 */
AT91_PIOD 21 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD21 periph A Data bit 15 */
};
};
nand@40000000 {
compatible = "atmel,at91rm9200-nand";
#address-cells = <0x1>;
#size-cells = <0x1>;
reg = <0x40000000 0x10000000
0xffffe000 0x600
0xffffe600 0x200
0x100000 0x100000>;
atmel,pmecc-lookup-table-offset = <0x8000 0x10000>;
atmel,nand-addr-offset = <0x15>;
atmel,nand-cmd-offset = <0x16>;
atmel,nand-has-dma;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_nand>;
gpios = <&pioD 5 GPIO_ACTIVE_HIGH &pioD 4 GPIO_ACTIVE_HIGH 0>;
status = "okay";
nand-bus-width = <0x8>;
nand-ecc-mode = "hw";
atmel,has-pmecc;
atmel,pmecc-cap = <0x2>;
atmel,pmecc-sector-size = <0x200>;
nand-on-flash-bbt;
at91bootstrap@0 {
label = "at91bootstrap";
reg = <0x0 0x40000>; //<0x0 0x100000>;
};
uboot@40000 {
label = "u-boot";
reg = <0x40000 0x80000>; //<0x100000 0x100000>;
};
ubootenv@c0000 {
label = "u-boot env";
reg = <0xc0000 0x140000>; //<0x200000 0x200000>;
};
kernel@200000 {
label = "kernel";
reg = <0x200000 0x400000>;
};
settings@800000 {
label = "settings";
reg = <0x800000 0x200000>;
};
rootfs@A00000 {
label = "rootfs";
reg = <0xA00000 0xDC00000>;
};
};
[ 5.010000] atmel_nand 40000000.nand: Use On Flash BBT
[ 5.020000] atmel_nand 40000000.nand: Using dma0chan2 for DMA transfers.
[ 5.030000] nand: device found, Manufacturer ID: 0xec, Chip ID: 0xda
[ 5.030000] nand: Samsung NAND 256MiB 3,3V 8-bit
[ 5.040000] nand: 256 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64
[ 5.040000] atmel_nand 40000000.nand: can't detect min. ECC, assume 2 bits in 512 bytes
[ 5.050000] atmel_nand 40000000.nand: Initialize PMECC params, cap: 2, sector: 512
[ 5.060000] Bad block table found at page 131008, version 0x01
[ 5.070000] Bad block table found at page 130944, version 0x01
[ 5.070000] nand_read_bbt: bad block at 0x000006260000
[ 5.080000] nand_read_bbt: bad block at 0x0000080e0000
[ 5.080000] nand_read_bbt: bad block at 0x000008e40000
[ 5.090000] 6 ofpart partitions found on MTD device atmel_nand
[ 5.090000] Creating 6 MTD partitions on "atmel_nand":
[ 5.100000] 0x000000000000-0x000000040000 : "at91bootstrap"
[ 5.110000] 0x000000040000-0x0000000c0000 : "u-boot"
[ 5.120000] 0x0000000c0000-0x000000200000 : "u-boot env"
[ 5.120000] 0x000000200000-0x000000600000 : "kernel"
[ 5.130000] 0x000000800000-0x000000a00000 : "settings"
[ 5.140000] 0x000000a00000-0x00000e600000 : "rootfs"
[ 0.632812] atmel_nand 40000000.nand: Use On Flash BBT
[ 0.632812] atmel_nand 40000000.nand: Using dma0chan0 for DMA transfers.
[ 0.640625] nand: second ID read did not match 30,98 against a0,57
[ 0.648437] nand: No NAND device found
Подскажите, реализована ли поддержка данного протокола в ядре Linux и если да то с какой версии. Есть ли сторонние патчи и есть ли какой нибудь мануал по настройке?
Что бы лет 10 линукс-шминукс... а потом хоп и на standalone переползли?
Есть камеры размером не более сантиметра с контактами по сторонам 14 штук, маркировка примерно такова 154x048550, примеры здесь, было бы интересно связать их с каким нибудь микроконтроллером, но не могу найти никакой документации на них, особенно интересует datasheet и протокол передачи данных. Кто нибудь с ними работал?
В Slackware есть псевдографическое приложение soma, там есть неплохая станция Drone Zone, кто нибудь на ЛОРе пользуется, увлекается?
Как быстро узнать каким критическим уязвимостям подверженно ядро такой-то версии? Вот есть старый проект на ядре 3.0.35, аттестация по кибербезопасности требует отслеживать и применять патчи, как узнать какие дырки в ядре имеются и есть ли какой-то набор патчей. я так понимаю что только читать логи следующих минорных выпусков?
Поставил web-камеру, завтра придет работник ремонт в ванной делать, человек вроде порядочный, но я все таки перестрахуюсь, т.к. на работе буду, установил камеру Creative Live! Cam Chat IM (VF0530) настроил motion, но на камере предательски горит синий светодиод, есть ли возможность погасить его програмно?
| ← назад | следующие → |