Ⅰ RK RG-928機械鍵盤接入電腦導致系統錯誤
很少遇到這情況的,可能是鍵盤與您現在用的系統兼容性不好。建議您換win7試試看,要是正常的話,那就是您這款鍵盤與您現在的系統兼容不好。
自己現在用雷柏v700 黑軸版的,就很好用。櫻桃黑軸,手感很好玩游戲還挺不錯的,自己挺喜歡!
Ⅱ C語言龍格庫塔編程錯誤在哪裡求指正
1、首先這是一個純C的程序,所以你應該使用一個純C的編譯器進行編譯,VC實現的是C++,所以會出現上面的錯誤。我使用gcc編譯運行的結果是: (windows下,你可以使用turbo c來編譯)
t= 0.00 y(0)=-1.000000e+00 y(1)=0.000000e+00 y(2)=1.000000e+00
t= 0.01 y(0)=-9.999500e-01 y(1)=9.999833e-03 y(2)=9.900498e-01
t= 0.02 y(0)=-9.998000e-01 y(1)=1.999867e-02 y(2)=9.801987e-01
t= 0.03 y(0)=-9.995500e-01 y(1)=2.999550e-02 y(2)=9.704455e-01
t= 0.04 y(0)=-9.992001e-01 y(1)=3.998933e-02 y(2)=9.607894e-01
t= 0.05 y(0)=-9.987503e-01 y(1)=4.997917e-02 y(2)=9.512294e-01
t= 0.06 y(0)=-9.982005e-01 y(1)=5.996401e-02 y(2)=9.417645e-01
t= 0.07 y(0)=-9.975510e-01 y(1)=6.994285e-02 y(2)=9.323938e-01
t= 0.08 y(0)=-9.968017e-01 y(1)=7.991469e-02 y(2)=9.231163e-01
t= 0.09 y(0)=-9.959527e-01 y(1)=8.987855e-02 y(2)=9.139312e-01
t= 0.10 y(0)=-9.950042e-01 y(1)=9.983342e-02 y(2)=9.048374e-01
2、如果一定要使用c++,下面是我調試好的程序:(我用g++調通的):
#include "stdio.h"
#include "stdlib.h"
void Func(double * y, double *d)
// double y[],d[];
{
d[0]=y[1]; /*y0'=y1*/
d[1]=-y[0]; /*y1'=y0*/
d[2]=-y[2]; /*y2'=y2*/
return;
}
void RKT(int t, double * y,double n,double h,int k,double * z)
// int n; /*微分方程組中方程的個數,也是未知函數的個數*/
// int k; /*積分的步數(包括起始點這一步)*/
// double t; /*積分的起始點t0*/
// double h; /*積分的步長*/
// double y[]; /*存放n個未知函數在起始點t處的函數值,返回時,其初值在二維數組z的第零列中*/
// double z[]; /*二維數組,體積為n x k.返回k個積分點上的n個未知函數值*/
{
// extern void Func(); /*聲明要求解的微分方程組*/
int i,j,l;
double a[4],*b,*d;
b=(double *)malloc(n*sizeof(double)); /*分配存儲空間*/
if(b == NULL)
{
printf("內存分配失敗\n");
exit(1);
}
d= (double *)malloc(n*sizeof(double)); /*分配存儲空間*/
if(d == NULL)
{
printf("內存分配失敗\n");
exit(1);
}
/*後面應用RK4公式中用到的系數*/
a[0]=h/2.0;
a[1]=h/2.0;
a[2]=h;
a[3]=h;
for(i=0; i<=n-1; i++)
z[i*k]=y[i]; /*將初值賦給數組z的相應位置*/
for(l=1; l<=k-1; l++)
{
Func(y, d);
for (i=0; i<=n-1; i++)
b[i]=y[i];
for (j=0; j<=2; j++)
{
for (i=0; i<=n-1; i++)
{
y[i]=z[i*k+l-1]+a[j]*d[i];
b[i]=b[i]+a[j+1]*d[i]/3.0;
}
Func(y,d);
}
for(i=0; i<=n-1; i++)
y[i]=b[i]+h*d[i]/6.0;
for(i=0; i<=n-1; i++)
z[i*k+l]=y[i];
t=t+h;
}
free(b); /*釋放存儲空間*/
free(d); /*釋放存儲空間*/
return;
}
main()
{
int i,j;
double t,h,y[3],z[3][11];
y[0]=-1.0;
y[1]=0.0;
y[2]=1.0;
t=0.0;
h=0.01;
RKT(t,y,3,h,11,(double *)z);
printf("\n");
for (i=0; i<=10; i++) /*列印輸出結果*/
{
t=i*h;
printf("t=%5.2f\t ",t);
for (j=0; j<=2; j++)
printf("y(%d)=%e ",j,z[j][i]);
printf("\n");
}
}
Ⅲ 我的程序編譯時候出現
最好截圖,然後附上出錯代碼,具體情形
Ⅳ rklauncher.dll是什麼
該DLL文件是RKlauncher.exe程序的驅動文件。該軟體是桌面顯示類工具,可以增加桌面顯示效果等,WIN7比較常用。
如果你的電腦經常提示RKLAUNCHER.DLL錯誤,可以按照下面方法解決。
「開始」---「運行」,輸入msconfig,在「啟動」標簽里把RKLauncher.dll所對應的啟動項目前的勾給去掉,然後確認即可。
Ⅳ Both DataSource and DataSourceID are defined on 'rkData'
不可以這樣去使用,datasourceID和datasource不能同時使用的,這樣寫就會錯誤的。datasourceID是綁定數據源控制項,datasource是綁定數據源.你同時綁定了數據源控制項有綁定了數據源,最終都是數據呈現。相當於你告訴了機器讓它去這樣做或者那樣做,但是沒有將什麼情況下怎麼做,肯定會出錯的!
Ⅵ 使用RK3288開發,燒錄完畢,開機串口列印只有一半。
兩方面原因,你需要自己分析一下:
1、燒錄的程序和主控器調用的地址對應不上。比如主控本來是要去第10行調用程序,結果程序被燒錄到了第12行。就出現了你描述的,串口列印輸出不正常的現象。
2、對NAND Flash或者eMMC晶元燒錄中的壞塊位置或者分區地址有分配不正常現象,NAND 需要特別注意
3、確保你的硬體本身是好的,這是首要條件。
Ⅶ 關於RKLauncher問題
計算機重新啟動
一、軟體方面
1.病毒
「沖擊波」病毒發作時還會提示系統將在60秒後自動啟動。
木馬程序從遠程式控制制你計算機的一切活動,包括讓你的計算機重新啟動。
清除病毒,木馬,或重裝系統。
2.系統文件損壞
系統文件被破壞,如Win2K下的KERNEL32.DLL,Win98 FONTS目錄下面的字體等系統運行時基本的文件被破壞,系統在啟動時會因此無法完成初始化而強迫重新啟動。
解決方法:覆蓋安裝或重新安裝。
3.定時軟體或計劃任務軟體起作用
如果你在「計劃任務欄」里設置了重新啟動或載入某些工作程序時,當定時時刻到來時,計算機也會再次啟動。對於這種情況,我們可以打開「啟動畢睿�觳槔錈嬗忻揮凶約翰皇煜さ鬧蔥形募�蚱淥�ㄊ憊ぷ鞽絛潁��淦簾魏笤倏��觳欏5比唬�頤且部梢栽凇霸誦小崩錈嬤苯郵淙搿癕sconfig」命令選擇啟動項。
二、硬體方面
1.機箱電源功率不足、直流輸出不純、動態反應遲鈍。
用戶或裝機商往往不重視電源,採用價格便宜的電源,因此是引起系統自動重啟的最大嫌疑之一。
①電源輸出功率不足,當運行大型的3D游戲等佔用CPU資源較大的軟體時,CPU需要大功率供電時,電源功率不夠而超載引起電源保護,停止輸出。電源停止輸出後,負載減輕,此時電源再次啟動。由於保護/恢復的時間很短,所以給我們的表現就是主機自動重啟。
②電源直流輸出不純,數字電路要求純直流供電,當電源的直流輸出中諧波含量過大,就會導致數字電路工作出錯,表現是經常性的死機或重啟。
③CPU的工作負載是動態的,對電流的要求也是動態的,而且要求動態反應速度迅速。有些品質差的電源動態反應時間長,也會導致經常性的死機或重啟。
④更新設備(高端顯卡/大硬碟/視頻卡),增加設備(刻錄機/硬碟)後,功率超出原配電源的額定輸出功率,就會導致經常性的死機或重啟。
解決方法:現換高質量大功率計算機電源。
2.內存熱穩定性不良、晶元損壞或者設置錯誤
內存出現問題導致系統重啟致系統重啟的幾率相對較大。
①內存熱穩定性不良,開機可以正常工作,當內存溫度升高到一定溫度,就不能正常工作,導致死機或重啟。
②內存晶元輕微損壞時,開機可以通過自檢(設置快速啟動不全面檢測內存),也可以進入正常的桌面進行正常操作,當運行一些I/O吞吐量大的軟體(媒體播放、游戲、平面/3D繪圖)時就會重啟或死機。
解決辦法:更換內存。
③把內存的CAS值設置得太小也會導致內存不穩定,造成系統自動重啟。一般最好採用BIOS的預設設置,不要自己改動。
3.CPU的溫度過高或者緩存損壞
①CPU溫度過高常常會引起保護性自動重啟。溫度過高的原因基本是由於機箱、CPU散熱不良,CPU散熱不良的原因有:散熱器的材質導熱率低,散熱器與CPU接觸面之間有異物(多為質保帖),風扇轉速低,風扇和散熱器積塵太多等等。還有P2/P3主板CPU下面的測溫探頭損壞或P4 CPU內部的測溫電路損壞,主板上的BIOS有BUG在某一特殊條件下測溫不準,CMOS中設置的CPU保護溫度過低等等也會引起保護性重啟。
②CPU內部的一、二級緩存損壞是CPU常見的故障。損壞程度輕的,還是可以啟動,可以進入正常的桌面進行正常操作,當運行一些I/O吞吐量大的軟體(媒體播放、游戲、平面/3D繪圖)時就會重啟或死機。
解決辦法:在CMOS中屏蔽二級緩存(L2)或一級緩存(L1),或更換CPU排除。
4.AGP顯卡、PCI卡(網卡、貓)引起的自動重啟
①外接卡做工不標准或品質不良,引發AGP/PCI匯流排的RESET信號誤動作導致系統重啟。
②還有顯卡、網卡松動引起系統重啟的事例。
5. 並口、串口、USB介面接入有故障或不兼容的外部設備時自動重啟
①外設有故障或不兼容,比如列印機的並口損壞,某一腳對地短路,USB設備損壞對地短路,針腳定義、信號電平不兼容等等。
②熱插拔外部設備時,抖動過大,引起信號或電源瞬間短路。
6.光碟機內部電路或晶元損壞
光碟機損壞,大部分表現是不能讀盤/刻盤。也有因為內部電路或晶元損壞導致主機在工作過程中突然重啟。光碟機本身的設計不良,FireWare有Bug。也會在讀取光碟時引起重啟。
7.機箱前面板RESET開關問題
機箱前面板RESET鍵實際是一個常開開關,主板上的RESET信號是 5V電平信號,連接到RESET開關。當開關閉合的瞬間, 5V電平對地導通,信號電平降為0V,觸發系統復位重啟,RESET開關回到常開位置,此時RESET信號恢復到 5V電平。如果RESET鍵損壞,開關始終處於閉合位置,RESET信號一直是0V,系統就無法加電自檢。當RESET開關彈性減弱,按鈕按下去不易彈起時,就會出現開關稍有振動就易於閉合。從而導致系統復位重啟。
解決辦法:更換RESET開關。
還有機箱內的RESET開關引線短路,導致主機自動重啟。
8. 主板故障
主板導致自動重啟的事例很少見。一般是與RESET相關的電路有故障;插座、插槽有虛焊,接觸不良;個別晶元、電容等元件損害。
三、其他原因
1.市電電壓不穩
①計算機的開關電源工作電壓范圍一般為170V-240V,當市電電壓低於170V時,計算機就會自動重啟或關機。
解決方法:加穩壓器(不是UPS)或130-260V的寬幅開關電源。
②電腦和空調、冰箱等大功耗電器共用一個插線板的話,在這些電器啟動的時候,供給電腦的電壓就會受到很大的影響,往往就表現為系統重啟。
解決辦法就是把他們的供電線路分開。
2.強磁干擾
不要小看電磁干擾,許多時候我們的電腦死機和重啟也是因為干擾造成的,這些干擾既有來自機箱內部CPU風扇、機箱風扇、顯卡風扇、顯卡、主板、硬碟的干擾,也有來自外部的動力線,變頻空調甚至汽車等大型設備的干擾。如果我們主機的搞干擾性能差或屏蔽不良,就會出現主機意外重啟或頻繁死機的現象。
3、交流供電線路接錯
有的用戶把供電線的零線直接接地(不走電度表的零線),導致自動重啟,原因是從地線引入干擾信號。
4.插排或電源插座的質量差,接觸不良。
電源插座在使用一段時間後,簧片的彈性慢慢喪失,導致插頭和簧片之間接觸不良、電阻不斷變化,電流隨之起伏,系統自然會很不穩定,一旦電流達不到系統運行的最低要求,電腦就重啟了。解決辦法,購買質量過關的好插座。
5. 積塵太多導致主板RESET線路短路引起自動重啟。
Ⅷ java 問題
LZ的錯誤主要有以下幾點,我給你修改的代碼都通過注釋標出來了,希望能幫到你哈
==================================================================
//程序執行會找到public的類,main方法的類必須是public的,而且要編譯並且運行它
public class NixKlappt {
public static void main( String[] args ) {
double[] x = {1.2, 2.3, 3.4};
int n = x.length;
System.out.print("Letztes Element von x = ");
//數組越界,數組長度x.length=3
//但數組是從下標0開始,到2也就是3個長度啦哈,所以必須是x[n-1]
System.out.println(x[n-1]);
//數組時null,那麼無法列印的,必須定義
int[] y = null;
//new int[]{1,2,3}
y = new int[3];
System.out.print("y[0] = ");
System.out.println(y[0]);
//沒有此類,怎麼可以使用呢,我根據大體意思給你定義了這個類哈,並提供兩個構造方法
Initialie rk;
rk = new Initialie("vorname", "nachname");
System.out.print("Initialien von Raj Kapoor: ");
System.out.print(rk.vorname);
System.out.println(rk.nachname);
Initialie[] fussballer = new Initialie[2];
//類需要初始化
fussballer[0] = new Initialie();
fussballer[1] = new Initialie();
System.out.print("Initialien von Mesut Oezil: ");
System.out.print(fussballer[0].vorname);
System.out.println(fussballer[0].nachname);
System.out.print("Initialien von Sami Khedira: ");
System.out.print(fussballer[1].vorname);
System.out.println(fussballer[1].nachname);
}
}
class Initialie{
String vorname;
String nachname;
public Initialie(String vorname, String nachname){
this.vorname = vorname;
this.nachname = nachname;
}
public Initialie(){
}
}
Ⅸ rk3188的uboot.img怎麼編譯
U-Boot編譯命令對於mini2440開發板,編譯U-Boot需要執行如下的命令:$makemini2440_config$makeall使用上面的命令編譯U-Boot,編譯生成的所有文件都保存在源代碼目錄中。為了保持源代碼目錄的干凈,可以使用如下命令將編譯生成的文件輸出到一個外部目錄,而不是在源代碼目錄中,下面的2種方法都將編譯生成的文件輸出到/tmp/build目錄:$exportBUILD_DIR=/tmp/build$makemini2440_config$makeall或$makeO=/tmp/buildmini2440_config(注意是字母O,而不是數字0)$makeall為了簡化分析過程,方便讀者理解,這里主要針對第一種編譯方式(目標輸出到源代碼所在目錄)進行分析。2.1.2U-Boot配置、編譯、連接過程U-Boot開頭有一些跟主機軟硬體環境相關的代碼,在每次執行make命令時這些代碼都被執行一次。1.U-Boot配置過程(1)定義主機系統架構HOSTARCH:=$(shelluname-m|\sed-es/i.86/i386/\-es/sun4u/sparc64/\-es/arm.*/arm/\-es/sa110/arm/\-es/powerpc/ppc/\-es/ppc64/ppc/\-es/macppc/ppc/)「sed–e」表示後面跟的是一串命令腳本,而表達式「s/abc/def/」表示要從標准輸入中,查找到內容為「abc」的,然後替換成「def」。其中「abc」表達式用可以使用「.」作為通配符。命令「uname–m」將輸出主機CPU的體系架構類型。作者的電腦使用IntelCore2系列的CPU,因此「uname–m」輸出「i686」。「i686」可以匹配命令「sed-es/i.86/i386/」中的「i.86」,因此在作者的機器上執行Makefile,HOSTARCH將被設置成「i386」。(2)定義主機操作系統類型HOSTOS:=$(shelluname-s|tr'[:upper:]''[:lower:]'|\sed-e's/\(cygwin\).*/cygwin/')「uname–s」輸出主機內核名字,作者使用linux發行版Ubuntu9.10,因此「uname–s」結果是「Linux」。「tr'[:upper:]''[:lower:]'」作用是將標准輸入中的所有大寫字母轉換為響應的小寫字母。因此執行結果是將HOSTOS設置為「linux」。(3)定義執行shell腳本的shell#Setshelltobashifpossible,otherwisefallbacktoshSHELL:=$(shellif[-x"$$BASH"];thenecho$$BASH;\elseif[-x/bin/bash];thenecho/bin/bash;\elseechosh;fi;fi)"$$BASH"的作用實質上是生成了字元串「$BASH」(前一個$號的作用是指明第二個$是普通的字元)。若執行當前Makefile的shell中定義了「$BASH」環境變數,且文件「$BASH」是可執行文件,則SHELL的值為「$BASH」。否則,若「/bin/bash」是可執行文件,則SHELL值為「/bin/bash」。若以上兩條都不成立,則將「sh」賦值給SHELL變數。由於作者的機器安裝了bashshell,且shell默認環境變數中定義了「$BASH」,因此SHELL被設置為$BASH。(4)設定編譯輸出目錄ifdefOifeq("$(originO)","commandline")BUILD_DIR:=$(O)endifendif函數$(origin,variable)輸出的結果是一個字元串,輸出結果由變數variable定義的方式決定,若variable在命令行中定義過,則origin函數返回值為"commandline"。假若在命令行中執行了「exportBUILD_DIR=/tmp/build」的命令,則「$(originO)」值為「commandline」,而BUILD_DIR被設置為「/tmp/build」。ifneq($(BUILD_DIR),)saved-output:=$(BUILD_DIR)#.$(shell[-d${BUILD_DIR}]||mkdir-p${BUILD_DIR})若${BUILD_DIR}表示的目錄沒有定義,則創建該目錄。#Verifyifitwassuccessful.BUILD_DIR:=$(shellcd$(BUILD_DIR)&&/bin/pwd)$(if$(BUILD_DIR),,$(erroroutputdirectory"$(saved-output)"doesnotexist))endif#ifneq($(BUILD_DIR),)若$(BUILD_DIR)為空,則將其賦值為當前目錄路徑(源代碼目錄)。並檢查$(BUILD_DIR)目錄是否存在。OBJTREE:=$(if$(BUILD_DIR),$(BUILD_DIR),$(CURDIR))SRCTREE:=$(CURDIR)TOPDIR:=$(SRCTREE)LNDIR:=$(OBJTREE)……MKCONFIG:=$(SRCTREE)/mkconfig……ifneq($(OBJTREE),$(SRCTREE))obj:=$(OBJTREE)/src:=$(SRCTREE)/elseobj:=src:=endifCURDIR變數指示Make當前的工作目錄,由於當前Make在U-Boot頂層目錄執行Makefile,因此CURDIR此時就是U-Boot頂層目錄。執行完上面的代碼後,SRCTREE,src變數就是U-Boot代碼頂層目錄,而OBJTREE,obj變數就是輸出目錄,若沒有定義BUILD_DIR環境變數,則SRCTREE,src變數與OBJTREE,obj變數都是U-Boot源代碼目錄。而MKCONFIG則表示U-Boot根目錄下的mkconfig腳本。2.makemini2440_config命令執行過程下面分析命令「makemini2440_config」執行過程,為了簡化分析過程這里主要分析將編譯目標輸出到源代碼目錄的情況。mini2440_config:unconfig@$(MKCONFIG)$(@:_config=)其中的依賴「unconfig」定義如下:unconfig:@rm-f$(obj)include/config.h$(obj)include/config.mk\$(obj)board/*/config.tmp$(obj)board/*/*/config.tmp\$(obj)include/autoconf.mk$(obj)include/autoconf.mk.dep其中「@」的作用是執行該命令時不在shell顯示。「obj」變數就是編譯輸出的目錄,因此「unconfig」的作用就是清除上次執行make*_config命令生成的配置文件(如include/config.h,include/config.mk等)。$(MKCONFIG)在上面指定為「$(SRCTREE)/mkconfig」。$(@:_config=)為將傳進來的所有參數中的_config替換為空(其中「@」指規則的目標文件名,在這里就是「mini2440_config」。$(text:patternA=patternB),這樣的語法表示把text變數每一個元素中結尾的patternA的文本替換為patternB,然後輸出)。因此$(@:_config=)的作用就是將mini2440_config中的_config去掉,得到mini2440。因此「@$(MKCONFIG)$(@:_config=)」實際上就是執行了如下命令:./mkconfigmini2440即將「mini2440」作為參數傳遞給當前目錄下的mkconfig腳本執行。在mkconfig腳本中給出了mkconfig的用法:#Parameters:TargetArchitectureCPUBoard[VENDOR][SOC]因此傳遞給mkconfig的參數的意義分別是:mini2440:Target(目標板型號)arm:Architecture(目標板的CPU架構)arm920t:CPU(具體使用的CPU型號)mini2440:Boardsamsung:VENDOR(生產廠家名)s3c24x0:SOC
Ⅹ 調用業務包RKG_GSY_PROCESS.P_MAIN函數:出錯ORA-06502:PL/SQL; 數字或值錯誤:字元串緩沖區太小
超出了欄位長度,或不符合欄位的設置。比如欄位設為not null,你插了個空值,或者欄位設置最大長度5位,你插了6位。