页次: 1
达克罗德 说:ns4168我也用过,电路极简单,不过貌似不便宜。想便宜就PT8211+8002。我拆过火火兔都用的8002
没错,8002才1毛多,声音够好了。
https://so.szlcsc.com/global.html?k=8002
立创商城搜了一下, 果然1毛多.
试了下将ip配置成静态的,"/etc/init.d/network restart"后发现可以上网
既是将 /etc/config/network 的wan口配置改成静态的,如下
修改前:
config interface 'wan'
option ifname 'eth1'
option proto 'dhcp'
修改后:
config interface 'wan'
option ifname 'eth1'
option proto 'static'
option mtu '1500'
option auto '1'
option netmask '255.255.255.0'
option ipaddr '192.168.1.186'
option gateway '192.168.1.1'
option dns '8.8.8.8'
有没有哪位高手提供下解决思路:|
感觉是 eth1 dhcp 出了问题?
咦, 帖子怎么不见了.
rtp: rtp@1c24800 {
compatible = "allwinner,sun4i-a10-ts";
reg = <0x01c24800 0x100>;
interrupts = <20>;
allwinner,ts-attached;
#thermal-sensor-cells = <0>;
};
https://github.com/Lichee-Pi/linux/blob/nano-4.14-exp/drivers/input/touchscreen/sun4i-ts.c
我仔细研究了一下设备树和驱动,
缺一个很重要的步骤,
就是端口的初始化,
要把 PA0..3 复用成为 RTP 端口才行。
直接到 probe 函数里面修改试一试。
为了简化问题, 可以用 busybox 里面的 devmem 命令,
直接把寄存器(0x01C20800)读出来, 然后再写进去。
超级萌新 说:gd 对标的就是 stm32,
与stm32 引脚兼容,
寄存器兼容,
我记得 GD32F1 系列比 STM32F1 便宜1-2元人民币.
速度应该和对标型号的STM32差不多.它们既不完全兼容,也不便宜。 STM32F103RBT6是4.63¥,我支付GD32F103RBT6 - 6.67¥。
我有一些代码使用GD32F103RBT6无法正常运行。当被问及GigaDevice注册差异手册时,他们甚至没有回应。 GD论坛也没有信息。有关GD32的任何参考和从STM32传输代码?
批量价GD会比STM32便宜一点点, 几片片的样品价就未必了.
虽然我用ST, 但是还是希望大家支持国产, 支持兆易创新
这样 ST 的价格才不会那么嚣张, 哈哈。
STM32F103RBT6: https://item.szlcsc.com/9244.html
GD32F103RBT6: https://item.szlcsc.com/79097.html
BLM32F103RBT6: https://item.szlcsc.com/91598.html
就像我用苹果手机, 不过还是支持华为小米, 有了搅局者,苹果才不会那么嚣张。
微凉VeiLiang 说:昨天买了一些原点的单片机,是flash的,也很便宜。调试器 70块钱
https://yueyd.taobao.com/category-1325720427.htm这个可以啊,mark一下!
确实便宜, 就是不知道疗效如何.
可以参考这个帖子: https://whycan.cn/t_1786.html
或者用 3楼的工具试一试
文件下载: freetype-2_9_1_20190125.7z
工程路径: freetype-2.9.1\builds\windows\vc2010\freetype.sln
可以用 VC2015 打开/编译/调试
后来终于找到一篇有用的文章了: https://www.cnblogs.com/kekec/p/9366688.html
可通过安装kb4019990更新解决该问题
Windows 7 SP1 x86
Windows 7 SP1 x64、Windows Server 2008 R2 x64
Windows Server 2012 x64
安装完Windows 7 SP1 x64版本的补丁之后,一切相安无事了, 发现 VS2017 的安装程序也能跑了.
终于解决了 0xC06D007E 错误
感谢blog的作者
达克罗德 说:楼主自己改变主意造成了损失,能怪谁?你自己不懂中文发生误会或者损失这很正常。请去把中文学好点,毕竟在中国,人们没有义务为你不懂中文造成的损失负责,不要一口一个中国骗子,这论坛都是中国人,晕哥还给你多次帮助
抱歉我的中文,只在清华大学上了一门中文课程。
这实际上是卖方的错 - 我曾三次要求他取消交货,他没有这样做。
关于中国文化,如果中国人想要出售给欧洲,强烈建议他们开始遵守一般贸易原则,包括欧洲的消费者法律,并提供适当语言的文件和手册等。
关于中国文学 - 当赤壁之战发生时 - 公元208-209?在我们的地区,特洛伊战争是在公元前1194年至1184年。保加利亚与马其顿,希腊,土耳其等人有着共同的历史。如果你认为中国人有一些有趣的故事,可以与奥德修斯,阿基里斯,赫拉克勒斯,亚历山大大帝等英雄竞争,那将会很有趣。
关于淘宝卖家, 我很能理解,因为他可能只是一个代销(分销)的, 很有可能根本不囤货, 有人在淘宝下单,他再直接找厂家发货,
这样一来二回, 货不管有没有发出去, 都是拦不住了, 因为厂家的发货仓库已经堆满了,
如果货到了快递公司根本就追不回了,
别问我怎么知道的, 我朋友就是做淘宝的, 根本不需要存货。
1. 概述
N76E616是一个内嵌FLASH、8位高性能1T 基于8051核的微控制器。指令集完全兼容标准和增强型的
的80C51。
N76E616内嵌18K的FLASH存储区,通常称作APROM,用于存放用户程序代码。该存储区支持IAP烧
写功能,即可通过片内固件更新程序代码,IAP功能同时提供用户可自行配置加密程序区或数据存储
区,也可通过IAP指令或MOVC指令读取任一区域内数据。另外N76E616还配置额外具有一存储区称作
LDROM,该区域可存放用于执行ISP的引导代码(boot code),LDROM区域从18K的APROM区域内
分割出来,通过配置位CONFIG配置大小,最多可配置到 4K 字节。整个18K FLASH区域还支持ICP编
程方式,即通过片外I/O由总线方式烧写片内FLASH数据,该方式不占用片内代码空间,且可通过加密
位对FLASH完全加密,保障程序代码无法读出。
N76E616 提供丰富的外设包括256字节的SRAM和256字节的外部RAM(XRAM),最大到46个IO口,两
个16位定时器/计数器 0/1,一个16位定时器2带4个自动重载定时器或PWM定时器。一个看门狗定时
器,一个自我唤醒定时器(WKT),一个16位自动重载定时器3用于通用目的或波特率发生器。两个UART
带有帧错误检测和自动地址识别,一个I2C,8通道共享引脚中断用于所有I/O,一个10位的ADC,和最
大到180段的LCD驱动。外设配备17个中断源带4级中断优先级。
N76E616配备5个时钟源和支持通过软件切换,四个时钟源包括2 MHz 到 16 MHz外部高速晶振,
32.768 kHz外部低速晶振,外部时钟输入,10 kHz内部震荡器,和一个11.059 MHz内部精确振荡器,
它在常温下达到±1%的精度。N76E616提供额外电源监测,例如上电复位和4级欠压检测,有稳定的电
源通断性能用于高可靠的系统设计。
N76E616微控制器操作功耗非常低,有两种经济的电源模式用来减少电源的消耗---空闲模式和掉电模
式。软件可以选择空闲模式关闭CPU时钟,但是允许外设继续工作。掉电模式停止整个系统时钟用于最
小的功耗。N76E616的系统时钟可以通过时钟分频器放慢,实现在性能和功耗之间的平衡。
带有高性能的CPU核和丰富的外设,N76E616可以通用的需求,家庭应用或马达控制等。
英文手册: DS_N76E616_EN_Rev1.04.pdf
中文手册: DS_N76E616_SC_Rev1.04.pdf
立创商城 3.61元: https://item.szlcsc.com/92021.html
淘宝最便宜的¥2.48: https://item.taobao.com/item.htm?id=580609012772
参考: https://www.jianshu.com/p/e4a90503d4a6
1. 使用 apt 安装 OpenGL 和开发包
sudo apt-get install build-essential libgl1-mesa-dev
sudo apt-get install freeglut3-dev
sudo apt-get install libglew-dev libsdl2-dev libsdl2-image-dev libglm-dev libfreetype6-dev
2. 在 编辑器 中撰写一段测试程序
/* light.c
此程序利用GLUT绘制一个OpenGL窗口,并显示一个加以光照的球。
*/
/* 由于头文件glut.h中已经包含了头文件gl.h和glu.h,所以只需要include 此文件*/
# include <GL/glut.h>
# include <stdlib.h>
/* 初始化材料属性、光源属性、光照模型,打开深度缓冲区 */
void init ( void )
{
GLfloat mat_specular [ ] = { 1.0, 1.0, 1.0, 1.0 };
GLfloat mat_shininess [ ] = { 50.0 };
GLfloat light_position [ ] = { 1.0, 1.0, 1.0, 0.0 };
glClearColor ( 0.0, 0.0, 0.0, 0.0 );
glShadeModel ( GL_SMOOTH );
glMaterialfv ( GL_FRONT, GL_SPECULAR, mat_specular);
glMaterialfv ( GL_FRONT, GL_SHININESS, mat_shininess);
glLightfv ( GL_LIGHT0, GL_POSITION, light_position);
glEnable (GL_LIGHTING);
glEnable (GL_LIGHT0);
glEnable (GL_DEPTH_TEST);
}
/*调用GLUT函数,绘制一个球*/
void display ( void )
{
glClear (GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glutSolidSphere (1.0, 40, 50);
glFlush ();
}
int main(int argc, char** argv)
{
/* GLUT环境初始化*/
glutInit (&argc, argv);
/* 显示模式初始化 */
glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB | GLUT_DEPTH);
/* 定义窗口大小 */
glutInitWindowSize (300, 300);
/* 定义窗口位置 */
glutInitWindowPosition (100, 100);
/* 显示窗口,窗口标题为执行函数名 */
glutCreateWindow ( argv [ 0 ] );
/* 调用OpenGL初始化函数 */
init ( );
/* 注册OpenGL绘图函数 */
glutDisplayFunc ( display );
// /* 进入GLUT消息循环,开始执行程序 */
glutMainLoop( );
return 0;
}
编译运行:
cc light.c -o light -lGL -lglut
./light
如果能正确看到如下的球体,证明配置成功。
https://www.cairographics.org/Xlib/
https://www.cypherpunk.at/files/2014/11/cairo_xlib_simple.c
#include <X11/Xlib.h>
#include <X11/Xatom.h>
#include <X11/Xutil.h>
#include <cairo.h>
#include <cairo-xlib.h>
#include <stdio.h>
#include <stdlib.h>
/*! Simple Cairo/Xlib example.
* @author Bernhard R. Fischer, 2048R/5C5FFD47 <bf@abenteuerland.at>.
* @version 2014110801
* Compile with
* gcc -Wall $(pkg-config --libs --cflags cairo x11) -o cairo_xlib_simple cairo_xlib_simple.c
*/
/*! Check for Xlib Mouse/Keypress events. All other events are discarded.
* @param sfc Pointer to Xlib surface.
* @param block If block is set to 0, this function always returns immediately
* and does not block. if set to a non-zero value, the function will block
* until the next event is received.
* @return The function returns 0 if no event occured (and block is set). A
* positive value indicates that a key was pressed and the X11 key symbol as
* defined in <X11/keysymdef.h> is returned. A negative value indicates a mouse
* button event. -1 is button 1 (left button), -2 is the middle button, and -3
* the right button.
*/
int cairo_check_event(cairo_surface_t *sfc, int block)
{
char keybuf[8];
KeySym key;
XEvent e;
for (;;)
{
if (block || XPending(cairo_xlib_surface_get_display(sfc)))
XNextEvent(cairo_xlib_surface_get_display(sfc), &e);
else
return 0;
switch (e.type)
{
case ButtonPress:
return -e.xbutton.button;
case KeyPress:
XLookupString(&e.xkey, keybuf, sizeof(keybuf), &key, NULL);
return key;
default:
fprintf(stderr, "Dropping unhandled XEevent.type = %d.\n", e.type);
}
}
}
/*! Open an X11 window and create a cairo surface base on that window.
* @param x Width of window.
* @param y Height of window.
* @return Returns a pointer to a valid Xlib cairo surface. The function does
* not return on error (exit(3)).
*/
cairo_surface_t *cairo_create_x11_surface0(int x, int y)
{
Display *dsp;
Drawable da;
int screen;
cairo_surface_t *sfc;
if ((dsp = XOpenDisplay(NULL)) == NULL)
exit(1);
screen = DefaultScreen(dsp);
da = XCreateSimpleWindow(dsp, DefaultRootWindow(dsp), 0, 0, x, y, 0, 0, 0);
XSelectInput(dsp, da, ButtonPressMask | KeyPressMask);
XMapWindow(dsp, da);
sfc = cairo_xlib_surface_create(dsp, da, DefaultVisual(dsp, screen), x, y);
cairo_xlib_surface_set_size(sfc, x, y);
return sfc;
}
/*! Destroy cairo Xlib surface and close X connection.
*/
void cairo_close_x11_surface(cairo_surface_t *sfc)
{
Display *dsp = cairo_xlib_surface_get_display(sfc);
cairo_surface_destroy(sfc);
XCloseDisplay(dsp);
}
int main(int argc, char **argv)
{
cairo_surface_t *sfc;
cairo_t *ctx;
sfc = cairo_create_x11_surface0(500, 500);
ctx = cairo_create(sfc);
cairo_set_source_rgb(ctx, 1, 1, 1);
cairo_paint(ctx);
cairo_move_to(ctx, 20, 20);
cairo_line_to(ctx, 200, 400);
cairo_line_to(ctx, 450, 100);
cairo_line_to(ctx, 20, 20);
cairo_set_source_rgb(ctx, 0, 0, 1);
cairo_fill_preserve(ctx);
cairo_set_line_width(ctx, 5);
cairo_set_source_rgb(ctx, 1, 1, 0);
cairo_stroke(ctx);
cairo_destroy(ctx);
cairo_check_event(sfc, 1);
cairo_close_x11_surface(sfc);
return 0;
}
页次: 1